Lisp по частям , вероятно, лучшая книга по реализации Lisp. Настоятельно рекомендуется. Вероятно, доступен через какой-нибудь сервис подержанных книг. Это может быть дорого, даже как подержанная книга. Это перевод с французского оригинала. Существует также исправленная версия на французском языке, которая, к сожалению, не переведена на английский.
Я бы также порекомендовал Парадигмы программирования искусственного интеллекта, Примеры из Common Lisp Питера Норвига. Он содержит описание компилятора схемы, написанного на Common Lisp. В целом это замечательная книга.
См. Также эту библиографию по методам реализации схемы .
Для Common Lisp доступны статьи, и некоторые компиляторы Common Lisp поставляются с небольшой документацией по реализации и внутреннему устройству компилятора. Обычно компилятор нельзя рассматривать изолированно, но его следует рассматривать в сочетании со средой выполнения, в которую он компилируется (сборщик мусора, наборы инструкций, управление памятью в целом, потоки, интерфейсы FFI, ...). См., Например, Дизайн CMU Common Lisp .
Вот отличный обзор конструкции компилятора для схемы: Инкрементальный подход к построению компилятора . Это довольно короткая статья, в которой описывается, как создать компилятор машинного кода для Scheme «с нуля».
Это не совсем для Lisp, а для Scheme (производная от lisp), но мы использовали этот бесплатный (как пиво) текст в моем классе по языкам программирования. Вот ссылка:
http://www.cs.brown.edu/~sk/Publications/Books/ProgLangs/
Имейте в виду, однако, что они учат, как написать интерпретатор Scheme не на чем ином, как на Scheme. Поначалу это закручивает ваш разум в узлы, но через некоторое время все становится яснее. Я не совсем уверен, что это то, что вы ищете, но это начало и иллюстрация некоторых важных вещей, о которых следует подумать.
Изучите эти книги по порядку:
Когда ваша базовая система Лиспа заработает, возможно, вы захотите реализовать «специализированные языки» поверх нее. Тогда книги, подобные Искусство протокола метаобъектов , станут важным справочником.
Я никогда не читал это, но когда-то была книга под названием «Лисп в маленьких кусочках», которая должна была быть очень хорошей для ваших целей .