Комментарии 57
Ook! был придуман в честь языка на котором разговаривает один из героев Терри Пратчетта.
+8
Этот герой (библиотекарь Незримого Университета) действительно был орангутангом. Особенно шикарны выглядят основные принципы языка на сайте его создателя:
Design Principles
- A programming language should be writable and readable by orang-utans.
- To this end, the syntax should be simple, easy to remember, and not mention the word «monkey».
- Bananas are good.
+7
А где же классика, Brainfuck/Malbolge/Befunge?
+1
НЛО прилетело и опубликовало эту надпись здесь
Было бы неплохо ко всем языкам добавить, являются ли они полными по тьюрингу. А в остальном спасибо, не видел и половину из описанного.
+2
아희 забавный. Так и напрашивается задача написать на нём что-то осмысленное, чтобы при этом оно по-корейски тоже читалось %)
0
https://aheui.github.io/
0
Спасибо! Я описание языка уже просмотрела. При попытке понять, можно ли так сообразить осмысленный текст, сразу же взрывается мозг (ну а что ещё ждать от эзотерического языка, собственно). В примерах кода только отдельные слова встречаются знакомые. Кстати, курсор можно в любую сторону двигать, а у них код в основном одномерный или змейкой.
0
я сперва неправильно прочитал Aheui…
+2
Вот интересно, почему талантливых людей тянет заниматься разной фигнёй, вместо чего то полезного…
-7
Наверное, потому, что это интересно. Сделать нечто свое. такое, что никто до тебя не делал, ну или хотя бы что-то, в чем ты будешь досконально разбираться от и до. Сам такой фигней маюсь
+2
См. вики:
An esoteric programming language (sometimes shortened to esolang) is a programming language designed to test the boundaries of computer programming language design, as a proof of concept, as software art, as a hacking interface to another language (particularly functional programming or procedural programming languages), or as a joke. The use of esoteric distinguishes these languages from programming languages that working developers use to write software. Usually, an esolang's creators do not intend the language to be used for mainstream programming, although some esoteric features, such as visuospatial syntax,[1] have inspired practical applications in the arts. Such languages are often popular among hackers and hobbyists.
The cultural context of esolangs has been studied by people like Geoff Cox, who writes that esolangs «shift attention from command and control toward cultural expression and refusal»,[16] seeing esolangs as similar to code art and code poetry, such as Mez Breeze's mezangelle. Daniel Temkin describes brainfuck as «refusing to ease the boundary between human expression and assembly code and thereby taking us on a ludicrous journey of logic,»[17] exposing the inherent conflict between human thinking and computer logic. He connects programming within an esolang to performing an event score such as those of the Fluxus movement, where playing out the rules of the logic in code makes the point of view of the language clear.[18]
Brainfuck подходит для экспериментов по генетическому программированию из-за простоты синтаксиса, и, соответственно, генерации исходного кода.
Thue — Эзотерический язык программирования, разработаный Джоном Колагойя в начале 2000 года. Это мета-язык, который демонстрирует нулевой тип в Иерархии Хомского, то есть неограниченную грамматику.
Будучи эзотерическим языком программирования, Unlambda предназначена для демонстрации очень чистого функционального языка, а не для практического использования.
Языки для других целей, но часто приводимые в списках эзотерических
P′′
QuakeC
P′′ is a primitive computer programming language created by Corrado Böhm[1][2] in 1964 to describe a family of Turing machines.
QuakeC — интерпретируемый язык программирования, разработанный в 1996 году Джоном Кармаком для написания части компьютерной игры Quake.
+2
Почему 1С в списке нет?
+19
Примеры (тьюринг-полного) sed на хабре
https://habrahabr.ru/post/306356/
https://habrahabr.ru/post/191006/
тут правда не сам язык эзотерический, а его «извращение»
https://habrahabr.ru/post/306356/
https://habrahabr.ru/post/191006/
тут правда не сам язык эзотерический, а его «извращение»
+2
Можно добавить язык «Эллочка», описанный в статье М. Трофимов. Язык программирования «Эллочка» // Монитор # 7-8,1994, с. 56. В этом языке, названном в честь известной героини Ильфа и Петрова, автор предложил минимизацию избыточности языков, сведя все операторы к виду:
Так,
будет эквивалентно паскалевскому:
Для Булевых выражений предложено использовать только and и not. Для I/O есть специальная переменная con. Так:
эквивалентно:
И
эквивалентно:
Далее автор отмечает:
<метка><условие><переменная><выражение><метка перехода>
Так,
110 x<y a 10*c 112
будет эквивалентно паскалевскому:
110: if x<y then begin a:=10*c; goto 112 end;
Для Булевых выражений предложено использовать только and и not. Для I/O есть специальная переменная con. Так:
218 true con 'hello' 219
эквивалентно:
write ('hello')
И
219 true x con 220
эквивалентно:
read (x)
Далее автор отмечает:
В итоге получим сверхэкономный язык, основанный на сверхлаконичном словаре — этакий словарь людоедки Эллочки для программистов. Вся беда только в том, что, как известно, скупой платит дважды [...] — многие программы на таком неумеренно лаконичном языке окажутся многословнее своих неэкономных собратьев. И действительно, Turbo Pascal фрагмент:
while (a<>0) or (b<>0) do begin dec (a); dec (b); end;
будет содержать гораздо меньше слов (символов языка), чем аналогичный на языке «Эллочка»
1 not (not (a=0) and not (b=0)) a a 4
2 true a a-1 3
3 true b b-1 1
4
+2
Ook! напомнил «Плоский Мир» Терри Пратчетта
+2
Он вам напомнил потому что он и создан по мотивам разговора Библиотекаря.
+1
Так и подумал, хе
0
https://esolangs.org/wiki/Ook!
и внизу видим ссылку The Librarian — Discworld and Terry Pratchett Wiki
Ну и да, любому читавшему Пратчетта достаточно очевидно, как только видишь оный ЯП, что без Библиотекаря тут не обошлось.
Так что правильно подумали и правильно показалось
и внизу видим ссылку The Librarian — Discworld and Terry Pratchett Wiki
Ну и да, любому читавшему Пратчетта достаточно очевидно, как только видишь оный ЯП, что без Библиотекаря тут не обошлось.
Так что правильно подумали и правильно показалось
+1
Примеры кода — и в картинках! :( А интересно было бы почитать…
0
Кроличья нора глубока.
И, судя повсему, ведет в Р'льех.
+1
Как раз пишу интерпретатор brainfuck на асме.
+4
Круто! +1
А можно полюбопытствовать: это хобби, работа, учебное задание? И какие цели?
А можно полюбопытствовать: это хобби, работа, учебное задание? И какие цели?
+1
Работа — это интересное предположение!
+1
Хобби, совмещённое с учёбой, по универу проходим асм и вот решил запилить. Уже грузится в qemu и обрабатывает +-., ах да, я его ещё пытаюсь уместить в mbr, пока вроде влазит :)
+1
Lazy K, похоже, был основан на парселтанге.
0
Кстати, основан на комбинаторной логике а не на комбинаторике, совсем разные разделы.
+1
Спасибо, исправил.
Как же круто, что на Хабре ходят по ссылкам и уточняют.
Как же круто, что на Хабре ходят по ссылкам и уточняют.
+1
По ссылкам, ага. Я для этого «парселтанга» железо рисовал.
0
А вот пруфчекер Globular, совершенно не смешной
https://golem.ph.utexas.edu/category/2015/12/globular.html
Теоремы изображаются картинками, доказательство по принципу «раскрась сам»
https://golem.ph.utexas.edu/category/2015/12/globular.html
Теоремы изображаются картинками, доказательство по принципу «раскрась сам»
0
Velato — вполне себе фри — джаз получился!
+1
Сюда же и JavaScript можно добавить:
много кода
[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]][([][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]]+[])[!+[]+!+[]+!+[]]+(!![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]])[+!+[]+[+[]]]+([][[]]+[])[+!+[]]+(![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[+!+[]]+([][[]]+[])[+[]]+([][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]])[+!+[]+[+[]]]+(!![]+[])[+!+[]]]((![]+[])[+!+[]]+(![]+[])[!+[]+!+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]+(!![]+[])[+[]]+(![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]])[!+[]+!+[]+[+[]]]+([]+[])[(![]+[])[+[]]+(!![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]])[+!+[]+[+[]]]+([][[]]+[])[+!+[]]+(!![]+[])[+[]]+([][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]]+[])[!+[]+!+[]+!+[]]+(!![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]])[+!+[]+[+[]]]+(!![]+[])[+!+[]]]()[+!+[]+[!+[]+!+[]]]+(+(!+[]+!+[]+!+[]+[!+[]+!+[]]))[(!![]+[])[+[]]+(!![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]])[+!+[]+[+[]]]+(+![]+([]+[])[([][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]]+[])[!+[]+!+[]+!+[]]+(!![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]])[+!+[]+[+[]]]+([][[]]+[])[+!+[]]+(![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[+!+[]]+([][[]]+[])[+[]]+([][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]])[+!+[]+[+[]]]+(!![]+[])[+!+[]]])[+!+[]+[+[]]]+(!![]+[])[+[]]+(!![]+[])[+!+[]]+([![]]+[][[]])[+!+[]+[+[]]]+([][[]]+[])[+!+[]]+(+![]+[![]]+([]+[])[([][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]]+[])[!+[]+!+[]+!+[]]+(!![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]])[+!+[]+[+[]]]+([][[]]+[])[+!+[]]+(![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[+!+[]]+([][[]]+[])[+[]]+([][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]])[+!+[]+[+[]]]+(!![]+[])[+!+[]]])[!+[]+!+[]+[+[]]]](!+[]+!+[]+!+[]+[!+[]+!+[]+!+[]])+(!![]+[])[+[]]+(![]+[])[+[]]+([]+[])[(![]+[])[+[]]+(!![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]])[+!+[]+[+[]]]+([][[]]+[])[+!+[]]+(!![]+[])[+[]]+([][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]]+[])[!+[]+!+[]+!+[]]+(!![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]])[+!+[]+[+[]]]+(!![]+[])[+!+[]]]()[+!+[]+[!+[]+!+[]]]+(!![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]])[!+[]+!+[]+[+[]]])()
+3
Это подмножество языка автор назвал JSFuck.
+1
Мне одному кажется, что слово «эзотерический» имеет другое значение?
-1
Раз уж упомянули Шекспира, то можно и Beatles
https://github.com/ramsey/beatles
https://github.com/ramsey/beatles
+1
Никто не ждал, и вот, спустя 5 лет я со своим комментарием :)
Возможно майнкрафт с его механизмами можно отнести эзотерическим способам программировать. К тому же эти "программы" вполне тьюринг-полны. Я видел как люди создавали полноценные калькуляторы и "дисплеи" в мире майнкрафта.
0
Зарегистрируйтесь на Хабре, чтобы оставить комментарий
Примеры кода на 39 эзотерических языках программирования