Верно ли «Всегда ли доступен весь язык» в случае Clojure?

Девятый пункт в Что сделало Lisp другим Пола Грэма гласит:

9. Всегда доступен весь язык.

Нет реального различия между временем чтения, времени компиляции и времени выполнения. Вы можете компилировать или запускать код во время чтения, читать или запускать код во время компиляции, а также читать или компилировать код во время выполнения.

Запуск кода во время чтения позволяет пользователям перепрограммировать синтаксис Лиспа; запуск кода во время компиляции - это основа макросов; компиляция во время выполнения - это основа использования Lisp в качестве языка расширения в таких программах, как Emacs; а чтение во время выполнения позволяет программам обмениваться данными с помощью s-выражений - идея, недавно переосмысленная в XML.

Сохраняется ли последняя точка маркера для Clojure?

16
задан missingfaktor 19 September 2010 в 06:42
поделиться