Я решил сделать 2D подход к этому вопросу ... Да, есть 7 2D esolangs!
Я черпал вдохновение в добавлении дополнительных языков ответом BlueEyedBeast (Foo, GolfScript)
<ESC>символьный литерал для Escape .
#>!>\'n\'r\'o\'c\,,,,,@'s'a'l'a'dJ,é'g'n+'i+'s+'s+'e+'r+'d+.ó[-]+[----->+++<]>.+++++++++++.+++[->+++<]>++.+[--->+<]>.+++H'turkey'~;oooooooo'sweettea.0-5++++++++fffffffff''`'
# >99*d1+c3-c89*4+dcc99*2+c!|$l9D3-O93++dOO8+O1+O1-O5+OO1+O95++O.
# >'p'()'u'()'m'()'p'()'k'()'i'()'n'()'p'()'i'()'e'()\
print'biscuits';'pecanpie'#"stuffing"R'c!'o!'r!'n!'b!'r!'e!'a!'d!*<ESC>ddddddSapplepie
Befunge-98
#?!> nothing important
'n push 'n'
STACK: [110]
\ swap top two stack values (TBH, I'm not really sure what happens in this case)
STACK: [110, 0]
'r\'o\'c\ repeat the same for other characters
STACK: [110 114 111 99 0]
,,,,, output the next 5 top stack values, "corn"
@ end program
rest of the code is irrelevant
since program has already stopped
Попробуйте онлайн! выходыcorn
> <>
Команды отображаются в порядке их появления
enter from the left, direction = right
# mirror, now the direction will change to left
and it wraps around and comes to the right
and reads code from the right to the left
'`' push this
' ... 5-0.aetteews' push this too
oooooooo outputs the top 5 characters of the stack
; end program
Попробуйте онлайн! (Только копирование и вставка) выходыsweettea
В
...<ESC> writes stuff over three lines and enters normal mode
ddddddS deletes 3 lines, delete another line and enter insert mode
applepie writes "applepie"
Попробуйте онлайн! выходные данные applepie(для его запуска может потребоваться ~ 20 секунд)
Python 2
# first two lines are comments
print"biscuits"; # prints "biscuits" and ends statement
'pecanpie' # dangling (and ignored) string literal
Попробуйте онлайн! (Только копирование и вставка) выходыbiscuits
05AB1E
#>!> # does nothing important
\'n\ # push 'n' and delete it
'r\'o\'c\ # repeat for other characters
,,,,, # prints 5 times (since there is nothing in stack,
# prints nothing)
@ # push the index of the top of stack
's'a'l'a'd # push these characters
J, # join them and print them out
# the rest of the code does not matter
# since there is no implicit print
# because we used the print statement
Попробуйте онлайн! выходыsalad
Gol> <>
Команды отображаются в порядке их появления
enter from the left, direction = right
# mirror, now the direction changes to left
and it wraps around and comes to the right
and reads code from the right to the left
' starting parsing strings
` escape next character
' gets escaped
" stop string parsing
fffffffff pushes 15, 8 times
++++++++ adds up the numbers, resulting in 135
5- subtract 4 from it, 130
0 pushes 0
0 jumps to (130, 0)
#\'n\'r\'o\'c\,,,,,@'r'o'l'l'sJ, ... H'turkey'~;oooooooo"sweettea.0-5++++++++fffffffff""`"
^
we are here now
˜ removes value at top of stack, '"'
"yekrut" push this string
H Output stack as characters and halt program
Попробуйте онлайн! выходыturkey
Foo
Foo выводит все что угодно в двойных кавычках, поэтому я старался не использовать двойные кавычки на других языках. Поскольку "stuffing"в двойных кавычках, он будет напечатан.
Попробуйте онлайн! выводит, stuffingа затем имеет ошибку
Стог сена (2015)
При этом используется интерпретатор Haystack 2015 (не 2016), поскольку более новая версия недействительна. Переводчик для этого есть, haystack.pyа не haystack_new.py
Команды отображаются в порядке их появления
# ignored
\ reflection (now it moves downwards)
> set direction to right
99*d1+c Output 'R'
3-c Output 'O'
89*4+dcc Outputs 'L', newline, 'L'
99*2+c!| Outputs 'S' and ends the program
Note: '!' is ignored by the interpreter
Эта программа выводит
R
O
L
L
S
и символ новой строки после этого вывода (эй, пробел не имеет значения!)
GolfScript
first 2 lines are comments
print'biscuits'; pushes "biscuits" to the stack and discards it
'pecanpie' push this
#... comment
implicit output
Попробуйте онлайн! выходыpecanpie
BF
Я использовал https://copy.sh/brainfuck/text.html для преобразования текста в BF. Хотя существует много ,входных операторов, код BF выполняется независимо от него.
Попробуйте онлайн! выходыgravy
расщепление
Чтобы начать программу деления, должен быть создан атом. Мы видим, что это происходит в третьей строке:
..."stuffing" Blah blah blah
R Spawns an atom with direction right
'c Gives the atom the mass of 'c''s ASCII value
! Print the atom's mass
'o!'r!'n!'b!'r!'e!'a!'d! Do the same for other characters
* Destroy atom, end program
Попробуйте онлайн! выходыcornbread
Минколанг v0.15
# Doesn't really do anything
\ Reflect, moves downwards
> Changes direction to right
... !| Does stuff in stack, '!' ignores the '|'
$l9D3 ... ++O Uses ASCII character codes to print "applecider"
. Ends program
Попробуйте онлайн! выходыapplecider
Шутки в сторону
é - clear stack
'g'n+'i+'s+'s+'e+'r+'d+ - load chars onto stack
. - print stack
ó - exit
Попробуйте онлайн! выходыdressing
Axo
(Команды показаны в порядке их появления)
#> blah blah
! rotate direction 90 degrees clockwise
> go right
'p'() push char and output
'u'() ... 'e'() repeat for other characters
\ end program
Попробуйте онлайн! выходыpumpkinpie