Jump to content

Читатель Лиспа

В языке программирования Lisp программа чтения или read Функция — это синтаксический анализатор , который преобразует текстовую форму объектов Lisp в соответствующую внутреннюю структуру объекта.

В исходном Лиспе S-выражения состояли только из символов , целых чисел и конструкторов списков. ( xi... ) и (x . y). Позже в Lisp, кульминацией которого стал Common Lisp , были добавлены литералы для чисел с плавающей запятой, комплексных и рациональных чисел, строк и конструкторов для векторов.

Программа чтения отвечает за анализ структуры списка, интернирование символов, преобразование чисел во внутреннюю форму и вызов макросов чтения.

Читать таблицу

[ редактировать ]

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

Чтение макросов

[ редактировать ]

В отличие от большинства языков программирования, Lisp поддерживает выполнение программ во время анализа, называемое «макросами чтения» или «макросами чтения». Они используются для расширения синтаксиса либо универсальными, либо специфичными для программы способами. Например, цитируемая форма (quote x) оператор можно сократить как 'x. ' оператор можно определить как макрос чтения, который читает следующий список и обертывает его quote. Аналогично, оператор обратной кавычки (`) может быть определен как макрос чтения.

Библиография

[ редактировать ]
Arc.Ask3.Ru: конец переведенного документа.
Arc.Ask3.Ru
Номер скриншота №: 7de1839538bc9a0385a56ba3ed1975d0__1483667160
URL1:https://arc.ask3.ru/arc/aa/7d/d0/7de1839538bc9a0385a56ba3ed1975d0.html
Заголовок, (Title) документа по адресу, URL1:
Lisp reader - Wikipedia
Данный printscreen веб страницы (снимок веб страницы, скриншот веб страницы), визуально-программная копия документа расположенного по адресу URL1 и сохраненная в файл, имеет: квалифицированную, усовершенствованную (подтверждены: метки времени, валидность сертификата), открепленную ЭЦП (приложена к данному файлу), что может быть использовано для подтверждения содержания и факта существования документа в этот момент времени. Права на данный скриншот принадлежат администрации Ask3.ru, использование в качестве доказательства только с письменного разрешения правообладателя скриншота. Администрация Ask3.ru не несет ответственности за информацию размещенную на данном скриншоте. Права на прочие зарегистрированные элементы любого права, изображенные на снимках принадлежат их владельцам. Качество перевода предоставляется как есть. Любые претензии, иски не могут быть предъявлены. Если вы не согласны с любым пунктом перечисленным выше, вы не можете использовать данный сайт и информация размещенную на нем (сайте/странице), немедленно покиньте данный сайт. В случае нарушения любого пункта перечисленного выше, штраф 55! (Пятьдесят пять факториал, Денежную единицу (имеющую самостоятельную стоимость) можете выбрать самостоятельно, выплаичвается товарами в течение 7 дней с момента нарушения.)