Оглавление
Обычная шепелявость
-
Основы программирования на Common Lisp
- Common Lisp – это язык программирования, который сочетает в себе функциональное и объектно-ориентированное программирование.
- Он был разработан в 1984 году и является одним из старейших языков программирования, который все еще активно используется.
- Common Lisp поддерживает динамическую и лексическую области видимости, что позволяет создавать сложные структуры данных и управлять ими.
-
Типы привязок и их область видимости
- Привязки в Common Lisp могут быть динамическими или лексическими, с динамическими привязками, имеющими неопределенную область видимости.
- Динамические привязки видны внутри блока, в котором они установлены, и могут быть связаны с глобальными переменными.
- Лексические привязки имеют ограниченную область видимости и могут быть связаны с локальными функциями или переменными.
-
Глобальные и специальные переменные
- В Common Lisp существуют глобальные переменные, которые доступны везде, и специальные переменные, которые имеют динамическую область видимости и ведут себя как глобальные переменные.
- Специальные переменные полезны для расширения контекста выполнения и передачи контекстной информации между функциями.
-
Лексические замыкания и их преимущества
- Лексические замыкания позволяют создавать функции, которые сохраняют свое состояние и могут быть вызваны повторно.
- Лексические области видимости упрощают компиляцию и оптимизацию кода, а также обеспечивают изоляцию программных модулей.
-
Примеры использования привязок
- Привязки используются для связывания значений с символами, что позволяет управлять данными и создавать сложные структуры.
- В примере с функцией foo, которая записывает данные в стандартный вывод, используется динамическая привязка к специальной переменной *standard-output*.
- Лексические замыкания используются для создания функций, которые сохраняют свое состояние и могут быть вызваны повторно.
- Пересказана только часть статьи. Для продолжения перейдите к чтению оригинала.
Полный текст статьи: