Draft:Some unnamed language
From Esolanging
Jump to navigationJump to search
Some unnamed language is an esolang invented by user:phira, it is using buffers for computation..
Codepage
This language use a custom codepage.
| 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | a | b | c | d | e | f | |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 0 | ♩ | ♪ | ♫ | ♬ | ¤ | § | © | ® | ℗ | ™ | ◁ | ▷ | ♤ | ♡ | ♢ | ♧ |
| 1 | ± | ∞ | ☾ | ☽ | △ | ▲ | ▽ | ▼ | ○ | ● | ◀ | ▶ | ♠ | ♥ | ♦ | ♣ |
| 2 | space | ! | " | # | $ | % | & | ' | ( | ) | * | + | , | - | . | / |
| 3 | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | : | ; | < | = | > | ? |
| 4 | @ | A | B | C | D | E | F | G | H | I | J | K | L | M | N | O |
| 5 | P | Q | R | S | T | U | V | W | X | Y | Z | [ | \ | ] | ^ | _ |
| 6 | ` | a | b | c | d | e | f | g | h | i | j | k | l | m | n | o |
| 7 | p | q | r | s | t | u | v | w | x | y | z | { | | | } | ~ | ¶ |
| 8 | ℕ | ℤ | ℚ | ℝ | ℂ | ℍ | α | β | γ | δ | ε | ζ | η | θ | ι | κ |
| 9 | λ | μ | ν | ξ | π | ρ | σ | τ | υ | φ | χ | ψ | ω | ↖ | ↑ | ↗ |
| a | † | ‡ | · | Γ | Δ | Θ | Λ | Ξ | Π | Σ | Φ | Ψ | Ω | ← | ◎ | → |
| b | ⊕ | ⊙ | ∫ | ‰ | “ | ” | ‹ | › | ∵ | ∴ | £ | ¥ | Þ | ↙ | ↓ | ↘ |
| c | ⁿ | Ȧ | Ḃ | Ċ | Ḋ | Ė | Ḟ | Ġ | Ḣ | İ | ∂ | ʊ | ‘ | Ṁ | Ṅ | Ȯ |
| d | Ṗ | « | Ṙ | Ṡ | Ṫ | ≒ | × | Ẇ | Ẋ | Ẏ | Ż | ½ | ⅓ | ⅔ | ¼ | ¾ |
| e | ⊥ | ȧ | ḃ | ċ | ḋ | ė | ḟ | ġ | ḣ | ï | ð | ª | ’ | ṁ | ṅ | ȯ |
| f | ṗ | » | ṙ | ṡ | ṫ | ∅ | ÷ | ẇ | ẋ | ẏ | ż | ₁ | ₂ | ₃ | ² | ³ |
or as a 256-character string:
♩♪♫♬¤§©®℗™◁▷♤♡♢♧±∞☾☽△▲▽▼○●◀▶♠♥♦♣ !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~¶ℕℤℚℝℂℍαβγδεζηθικλμνξπρστυφχψω↖↑↗†‡·ΓΔΘΛΞΠΣΦΨΩ←◎→⊕⊙∫‰“”‹›∵∴£¥Þ↙↓↘ⁿȦḂĊḊĖḞĠḢİ∂ʊ‘ṀṄȮṖ«ṘṠṪ≒×ẆẊẎݽ⅓⅔¼¾⊥ȧḃċḋėḟġḣïðª’ṁṅȯṗ»ṙṡṫ∅÷ẇẋẏż₁₂₃²³
Program flow
the program runs on a buffer which can be arbitrarily large, and initially has nothing.
groups still need functions: Ġ℗←WζȧḞ₁ ↑Ȧẏ↙ρ×♦Ḃ ”↓ḊKΠΣYT⊥qṡ∵gjι‘ïℚ◁®y‡£χ♬→ηx²\ℂrℝ♫ẋġΨℕÞ6'C1△Ẋẇ§∞·uṁBĊ"X≒Ṫ:ż☾»♧↘# Θ♪ḟŻ◎○βlo2%₃ð0$γ™I-sZ☽ʊ?ΔḃẆṀ«cN◀]⅓_⊙⅔Ẏ▲μ♩ṘνΛ●t↖υ▼/ωⁿ8&↗¥±α!δȮfVεSė÷Φ;kMA
| command (any in the set is ok) | meaning |
|---|---|
H¼Γ>@={© |
append "Hello, World!" into buffer |
Qṙd†Ṡ♠zw |
append program's source code into buffer |
9ℍ5“i∫[b |
append lyrics of 99 bottles of beer into buffer |
³ℤg |
triple each character's charcode of buffer modulo 256 |
+’ |
adds the adjacent characters of the buffer and modulo the charcode to produce a new character, replace buffer with that. eg. abcdef⊥∵ -> 97 98 99 100 101 102 224 184 -> 197 199 201 152 -> ĖĠİυ
|
^Ṅṅȯ |
same as + but xors instead
|
|}ªG |
unconditionally skips 2 instructions |
R‹*pmψ♢` |
reverse entire buffer |
3Ṗİ< |
append the first 3 chars of buffer to buffer |
h∴¶ |
append "h!.rf[,zla;,,[.zq" to buffer |
(ḋ½ |
jump to the corresponding command whose group is equal to that of )
|
)Ėξ |
jump to the corresponding command whose group is equal to that of (
|
Ωθ |
skips next command if buffer front is equal to previous character in program. eg. aΩ(bḢ) with buffer a single a will skip the ( and Ḣ skips the ), thus terminates.
|
∅Ḣ |
skips next command if buffer front is NOT equal to previous character in program. |
L¾ḣ |
append the length of buffer, as base 23, to buffer. aphabet: 0123456789abc_.?∂<)Ėξ>
|
.‰τ |
output & remove first char of buffer |
φσ∂ċ |
input a character and append to buffer |
e♥U4 |
expands the program by the buffer. does not clear the buffer |
OJn♡ |
outputs and cleans entire buffer |
π▶E▷ṫP♤7 |
append "3.14159265358979323846264338327" to buffer |
FΞ♣Daλκ¤ |
use fence cipher to encrypt buffer, using x lanes, x is the charcode of the character following this command (will be executed) modulo 17, and added by 2. |
ṗ,v⊕₂›~▽ |
appends all characters with prime codepoints into buffer, that is, ♫♬§®▷♡∞☽▼♥♣%)+/5;=CGIOSYaegkmq¶ℝδζρτ↖ΓΞ←‰”↘ȦĖĠṠ¾ċėïȯ»₁
|