ФОРМЫ. УПРАВЛЯЮЩИЕ КОНСТРУКЦИИ В ЛИСП-ПРОГРАММЕ
Программа состоит не только из функций, но и из форм. Простейшими формами являются константы, переменные, лямбда-вызовы, вызовы функций.
Остановимся более подробно на специальных формах, предназначенных для управления обработкой программы и контекстом. У каждой формы определенный синтаксис и семантика, основанные на едином способе записи и интерпретации.
Управляющие предложения Лиспа внешне выглядят как вызовы функций - в виде скобочных выражений, первый элемент которых действует как имя управляющей структуры, а остальные элементы - как аргументы. Наиболее важные формы можно разделить на следующие группы:
Работа с контекстом
• QUOTE или блокировка вычисления,
• вызов функции и лямбда-вызов,
• предложения LET и LET*;
Последовательное исполнение
• предложения PROG1, PROG2 и PROGN;
Разветвление исполнения
• условные предложения COND, IF, WHEN, UNLESS,
• выбирающее предложение CASE;
Итерации
• циклические предложения DO, DO*, LOOP, DOTIMES, DOUNTIL;
Передачи управления
• предложения PROG, GO и RETURN;