Cтраница 2
Лисп во многом отличается от большинства других языков. Наиболее удивительная черта - это эквивалентность представления программ и данных в языке, что позволяет выполнять структуры данных как программы и модифицировать программы как данные. Другой поразительной особенностью является применение в качестве основной управляющей структуры не итерации ( цикла), как в большинстве языков программирования, а рекурсии. Третья особенность состоит в широком использовании структуры данных связанных списков и наличии общих операций для их модификации. Обработка списков лежит в основе большинства алгоритмов Лиспа, хотя в языке имеются также ограниченные возможности для работы с числами и литерами. Важный метод управления памятью, известный под названием сбор мусора, также впервые появился в Лиспе. [16]
Такие языки часто используются в структурном программировании. Обычно формальный синтаксис языка проектирования программ покрывает задачи определения данных и общей структуры программы. В последнем случае используемые средства должны включать в себя основные управляющие структуры - следования, выбора и итерации - и конструкции для определения и вызова подпрограмм. [17]