Что языки не имеют конструкциями цикличного выполнения?

Какие языки являются рекурсивно-единственными языками?

9
задан JRL 28 February 2010 в 12:26
поделиться

5 ответов

Это зависит от того, что вы подразумеваете под циклической конструкцией - существует несколько типов. Бесконечные циклы, итераторы - циклы, которые подсчитывают каждый элемент в массиве или хэше - и общие циклы, такие как стиль C

for ( int i = 0; i < 10; i++ )

В Википедии есть таблица поддержки таких конструкций по языкам: Таблица перекрестных ссылок системы циклов

Ответить на ваш вопрос полностью, Haskell и Scheme - это два примера языков, которые не имеют встроенных стандартных для циклов; обычно они выполняются с использованием рекурсии.

6
ответ дан 4 December 2019 в 12:17
поделиться

Языки функционального программирования (например, Haskell, Erlang) обычно не имеют циклов, а также функционального уровня языки (например, FP, J) или логические языки (например, Prolog, Planner). Действительно, почти вся группа декларативных языков (из которых функциональные, функциональные, логические и т. Д. Являются подмножеством), как правило, не имеют циклических конструкций.

Но ...

При этом у многих из них есть способы сделать то же самое, что и явное циклическое выполнение. В Common Lisp, например, есть макросы, которые дают вам возможность делать то, что выглядит обычным для циклов, while и т. Д., С помощью макрокоманды «за кулисами». Дилан (очень непохожий на Lisp) идет дальше и возводит такие макросы в нечто, что фактически является частью языка (хотя семантика все еще может быть определена в терминах рекурсии и макросов). Кроме того, обычные операции в функциональных языках, такие как застежки-молнии, карты, складки, дубли и т. Д., Являются функциями более высокого уровня, которые маскируют явную рекурсию за вызовом функции и действуют во многих отношениях подобно различным конструкциям цикла.

5
ответ дан 4 December 2019 в 12:17
поделиться

Эрланг не имеет циклических конструкций. Вместо этого вы используете рекурсию.

4
ответ дан 4 December 2019 в 12:17
поделиться

Пролог и другие языки программирования логики .

Кстати, разве этот вопрос в большей или меньшей степени не сводится к парадигме программирования? В императивных языках есть циклические конструкции; другого нету.

Изменить : Язык, разработанный специально, чтобы заставить вас вырвать глаза, например

2
ответ дан 4 December 2019 в 12:17
поделиться

Очевидный ответ (если он считается языком) - это различные типы ассемблерных языков.

0
ответ дан 4 December 2019 в 12:17
поделиться
Другие вопросы по тегам:

Похожие вопросы: