Изотерический язык программирования: различия между версиями

Материал из Поле цифровой дидактики
(Новая страница: «{{Понятие |Description=Язык программирования, разработанный для исследования границ возможностей разработки языков программирования, для доказательства потенциально возможной реализации некой идеи, в качестве произведения программного искусства или в к...»)
 
 
(не показана 1 промежуточная версия этого же участника)
Строка 6: Строка 6:


На практике такие языки, как правило, бесполезны, однако программирование на некоторых из них является неплохой тренировкой. Эзотерические языки нередко включают в список разрешённых языков на конкурсах по программированию.
На практике такие языки, как правило, бесполезны, однако программирование на некоторых из них является неплохой тренировкой. Эзотерические языки нередко включают в список разрешённых языков на конкурсах по программированию.
== Вольная классификация ==
Большинство эзотерических языков программирования можно отнести к определенным группам, в зависимости от целей и идей конкретного языка
<graphviz>
digraph G {
layout=dot;
node [shape="rect"];
graph[rankdir="LR"];
"Эзотерический язык программирования" [URL="Изотерический язык программирования"] ;
"Эзотерический язык программирования"-> "Максимальное сокращение синтаксиса";
"Максимальное сокращение синтаксиса" -> "Whitespace", "COW", "Ook!", "Spoon";
"Эзотерический язык программирования"-> "Многомерное представление программ";
"Многомерное представление программ" -> "Befunge", "Trefunge", "4DL";
"Эзотерический язык программирования"-> "Копирование собственного кода";
"Копирование собственного кода" -> "Smith", "Muriel";
"Эзотерический язык программирования"-> "Максимальное усложнение написания программ";
"Максимальное усложнение написания программ" -> "Malbolge", "Alpaca";
"Эзотерический язык программирования"-> "Литературный синтаксис";
"Литературный синтаксис" -> "Chef", "Haifu", "Shakespeare";
"Эзотерический язык программирования"-> "Языки с нечеловеческой логикой";
"Языки с нечеловеческой логикой" -> "Var'aq";
"Эзотерический язык программирования"-> "Максимальное отличие от существующих языков программирования";
"Максимальное отличие от существующих языков программирования" -> "INTERCAL", "FALSE";
}
</graphviz>

Текущая версия на 22:25, 19 декабря 2024


Описание Язык программирования, разработанный для исследования границ возможностей разработки языков программирования, для доказательства потенциально возможной реализации некой идеи, в качестве произведения программного искусства или в качестве шутки
Область знаний Информатика
Авторы
Поясняющее видео
Близкие понятия
Среды и средства для освоения понятия

Многие эзотерические языки придумываются для развлечения, часто они пародируют «настоящие» или являются абсурдным воплощением «серьёзных» концепций программирования. Некоторые эзотерические языки нарочно ограничены (как, например, язык HQ9+), другие являются тьюринг-полными, то есть языками общего назначения. Общее свойство, присущее любому эзотерическому языку — текст программы на нём понятен лишь «посвящённому» либо непонятен вообще, потому что для составления программы нужно написать программу на обычном языке программирования. В то время как разработчики «реальных» языков программирования стараются сделать синтаксис максимально понятным, а программирование — удобным, создатели эзотерических языков ставят перед собой другие задачи.

На практике такие языки, как правило, бесполезны, однако программирование на некоторых из них является неплохой тренировкой. Эзотерические языки нередко включают в список разрешённых языков на конкурсах по программированию.

Вольная классификация

Большинство эзотерических языков программирования можно отнести к определенным группам, в зависимости от целей и идей конкретного языка