Какой язык программирования считается эзотерическим умник

Спросите любого, кто не имеет никакого отношения к компьютерам: Бууут…иногда мы действительно такие. Одна особая ситуация, в которой мы любим быть странными. — это когда некоторые из нас решают создать так называемые эзотерические языки. Язык программирования должен быть элегантным, быстрым, универсальным, простым для понимания и изучения. Но не все из них, некоторые люди любят создавать странные языки программирования, просто для удовольствия или, может быть. В качестве упражнения. Давайте посмотрим, какие странные вещи создали сообщество программистов в этом коротком, неполном списке.

ЛОЛКОД

LOLCODE-это эзотерический язык программирования, вдохновленный lolspeak, языком. Выраженным в примерах интернет-мема lolcat.

Язык был создан в 2007 году Адамом Линдсеем. Исследователем вычислительного факультета Ланкастерского университета.

Язык четко не определен с точки зрения приоритетов операторов и правильного синтаксиса. Но существует несколько функционирующих интерпретаторов и компиляторов. Было доказано, что одна из интерпретаций этого языка является полной по Тьюрингу.

lolcode эзотерический язык

Как и в случае с большинством языков в этом списке, здесь нет стандартной библиотеки. О которой можно было бы говорить. Это означает, что вы не сможете использовать LOLCODE ни для чего другого. Кроме чтения файла или записи текста на консоль. Если вам нужна более мощная версия, ознакомьтесь с LOLPython, который вдохновлен LOLCODE.

СТЕКЛО

Glass-это эзотерический язык программирования. Разработанный Грегором Ричардсом в 2005 году. Он сочетает в себе неинтуитивную постфиксную нотацию с тяжелой объектной ориентацией. Требующей обширного жонглирования основным стеком в сочетании с его объектно-ориентированной структурой. По мнению автора, ни один другой язык не реализуется подобным образом, потому что это было бы идиотизмом.

вот реализация серии фибоначчи в стекле:

стеклянный язык фибоначчи

БРЕЙНФАК

Brainfuck-это эзотерический язык программирования. Созданный в 1993 году Урбаном Мюллером и отличающийся крайним минимализмом

, состоящий всего из восьми простых команд и указателя команд. Хотя он полностью завершен по Тьюрингу, он предназначен не для практического использования, а для того. Чтобы бросить вызов и развлечь программистов.

Название языка является отсылкой к жаргонному термину Brainfuck. Который относится к вещам настолько сложным или необычным. Что они выходят за пределы нашего понимания.

Следуя простой реализации hello world в brainfuck, прокомментируйте для простоты.

привет мир на языке brainfuck

И тот же код без комментариев:

brainfuck привет мир

КУРИЦА

Это мой любимый вариант.

Программа chicken состоит из лексем В каждой строке есть несколько цыплят, разделенных пробелами. Количество цыплят соответствует коду операции. Завершающие новые строки имеют большое значение, так как пустая строка будет генерировать код операции

Инструкции загружаются в стек и выполняются непосредственно там. Что позволяет вводить произвольный код и выполнять его через прыжок. Самоизменяющийся код также возможен, поскольку программный стек не ограничен.

Пользователь может ввести входное значение перед выполнением программы. Эти входные данные хранятся в одном из двух регистров.

Вот

куриный язык привет мир

ПРОБЕЛЫ

Whitespace-это эзотерический язык программирования. Разработанный Эдвином Брэди и Крисом Моррисом из Даремского университета (также разработчиками языков программирования Kaya и Idris). Он был выпущен 1 апреля 2003 года (День дурака). Его имя является ссылкой на символы пробела. В отличие от большинства языков программирования. Которые игнорируют или придают мало значения большинству пробельных символов. Интерпретатор пробельных символов игнорирует любые небелые символы. Только пробелы, табуляции и перевод строк имеют смысл.Следствием этого свойства является то. Что программа с пробелами может легко содержаться в символах с пробелами программы. Написанной на другом языке. За исключением. Возможно, языков. Которые зависят от пробелов для синтаксической валидности. Таких как Python. Что делает текст полиглотом.

Сам язык является императивным языком на основе стека. Виртуальная машина, на которой выполняются программы, имеет стек и кучу. Программист может свободно помещать целые числа произвольной ширины в стек (в настоящее время не существует реализации чисел с плавающей запятой). А также может обращаться к куче как к постоянному хранилищу переменных и структур данных.

Вот привет мир на языке пробелов (красный — пробелы, синий-вкладки)

язык пробелов hello world

///

/// (произносится как Единственная операция-это повторная подстановка строк с использованием синтаксиса /pattern/replacement/. Несмотря на свою крайнюю простоту – нет даже очевидного способа создания цикла – он был доказан Тьюринг-полным Эрджаном Йохансеном в 2009 году. Который создал интерпретатор для побитового циклического тега языка Тьюринга.

Вот реализация hellow world в косых чертах

косые черты языка привет мир

BEFUNGE

Befunge-это двумерный язык программирования. Ваш код помещается на игровое поле с фиксированным размером. Каждая ячейка игрового поля может содержать либо код, либо данные, и ваша программа может заменить любую ячейку. Которую она пожелает. Интерпретатор начинается в верхней левой ячейке и продолжается в правой. Вы можете управлять направлением, которое принимает интерпретатор, с помощью специальных инструкций направления. Например это бесконечный цикл:

язык befunge

Или более сложный факториал числового цикла:

язык befunge

ПИТ

Piet-это язык программирования, в котором программы выглядят как абстрактные картины. Язык назван в честь Пита Мондриана, который был пионером в области геометрического абстрактного искусства. На сайте автора вы можете прочитать: Ну что ж, я полагаю, мы не все можем быть писателями эзотерического языка.

Основным строительным блоком для программ Piet является цветовой блок. Он поддерживает 20 различных цветов, а некоторые реализации поддерживают и другие. Компиляция управляется Вот программа

программирование на языке piet

МАЛЬБОЛГЕ

Malbolge-это язык программирования, изобретенный Беном Олмстедом в 1998 году. Названный в честь восьмого круга ада в Дантовском Аду. Название было выбрано не случайно — язык был специально разработан так. Чтобы на нем невозможно было писать полезные программы. Через несколько лет после его внедрения в дизайне были обнаружены слабые места. Которые позволяют писать программы Malbolge. Тем не менее, вы все еще должны быть ученым-криптографом, чтобы написать в нем значимую программу. Вот что такое похоже на Мальболге:

мальбольжский язык

-Английский

-Английский — это язык программирования. Который пытается имитировать естественный звучащий язык. Его синтаксис очень свободен, чтобы дать писателю большую свободу выражения. Никакие функции не могут быть определены программистом — он может использовать только встроенные.

Вот на чем написана программа…-английский выглядит так:

английский язык программирования

Эзотерические языки-это в основном способ повеселиться для нас, программистов uberner, надеюсь. Вы тоже повеселились. Читая эту статью.

Поддержите нас, взглянув на наши футболки!