Тьюринговская трясина: различия между версиями
[непроверенная версия] | [непроверенная версия] |
Нет описания правки |
EugeneZ (обсуждение | вклад) м викификация |
||
Строка 1: | Строка 1: | ||
'''Тьюринговская трясина''' — жаргонное общее название для [[язык программирования|языков программирования]], которые [[Полнота по Тьюрингу|Тьюринг-полны]], но обладают крайне примитивными синтаксисом и семантикой. Они неудобны для практического программирования (из-за трудности написания программ и низкой производительности), зато хорошо подходят для некоторых других задач (доказательство невычислимости некоторых функций, иллюстрация базовых принципов программирования и т. д.). Поэтому они интересны для [[информатика|информатики]]. Многие [[эзотерические языки программирования]] также являются «трясинами Тьюринга». |
'''Тьюринговская трясина''' — жаргонное общее название для [[язык программирования|языков программирования]], которые [[Полнота по Тьюрингу|Тьюринг-полны]], но обладают крайне примитивными синтаксисом и семантикой. Они неудобны для практического программирования (из-за трудности написания программ и низкой производительности), зато хорошо подходят для некоторых других задач (доказательство невычислимости некоторых функций, иллюстрация базовых принципов программирования и т. д.). Поэтому они интересны для [[информатика|информатики]]. Многие [[эзотерические языки программирования]] также являются «трясинами Тьюринга». |
||
Другие возможные переводы: яма Тьюринга, смоляной колодец Тьюринга. Дословно: смоляная яма Тьюринга (Turing tar-pit). |
Другие возможные переводы: яма Тьюринга, смоляной колодец Тьюринга. Дословно: [[смоляная яма]] Тьюринга (Turing tar-pit). |
||
Originally: «''54. Остерегайтесь трясин Тьюринга, в которых можно сделать всё, но ничего интересного нельзя сделать просто.''» <ref>[http://www-pu.informatik.uni-tuebingen.de/users/klaeren/epigrams.html Alan Perlis, «''Epigrams on Programming''», SIGPLAN Notices Vol. 17, No. 9, September 1982, pages 7 — 13 {{ref-en}}]</ref>. |
Originally: «''54. Остерегайтесь трясин Тьюринга, в которых можно сделать всё, но ничего интересного нельзя сделать просто.''» <ref>[http://www-pu.informatik.uni-tuebingen.de/users/klaeren/epigrams.html Alan Perlis, «''Epigrams on Programming''», SIGPLAN Notices Vol. 17, No. 9, September 1982, pages 7 — 13 {{ref-en}}]</ref>. |
Версия от 17:45, 18 ноября 2010
Тьюринговская трясина — жаргонное общее название для языков программирования, которые Тьюринг-полны, но обладают крайне примитивными синтаксисом и семантикой. Они неудобны для практического программирования (из-за трудности написания программ и низкой производительности), зато хорошо подходят для некоторых других задач (доказательство невычислимости некоторых функций, иллюстрация базовых принципов программирования и т. д.). Поэтому они интересны для информатики. Многие эзотерические языки программирования также являются «трясинами Тьюринга».
Другие возможные переводы: яма Тьюринга, смоляной колодец Тьюринга. Дословно: смоляная яма Тьюринга (Turing tar-pit).
Originally: «54. Остерегайтесь трясин Тьюринга, в которых можно сделать всё, но ничего интересного нельзя сделать просто.» [1].
Примеры
Возможно, этот раздел содержит оригинальное исследование. |
- Комбинаторная логика, особенно бинарная комбинаторная логика
- INTERCAL
- Нетипизированное лямбда-исчисление
- OISC (машина, набор инструкций которой содержит только команды вроде «вычесть и перейти, если результат меньше нуля»).
- Язык ассемблера PDP-8 (одна из немногих коммерчески успешных «трясин Тьюринга»)
- Машина Тьюринга
- Unlambda
- MISC — Minimal Instruction Set Computing, микропроцессоры с минимальным набором команд
Существует две тенденции разработке «трясин Тьюринга»: сокращение числа инструкций и сокращение числа символов. Результаты:
- Бинарная комбинаторная логика: 2 term-rewriting rules, 2 символа
- Brainfuck: 8 инструкций, 8 символов
- Iota and Jot: 2 операции, 2 символа
- OISC: 1 инструкция, 3 символа (signed unary with a separator)
- Thue: 1 инструкция, 128+ символов