В Allegro CL есть пролог (Allegro Prolog), построенный на базе реализации Питера Норвига - директора по исследованиям в Гугл (если ничего не поменялось еще). Эта реализация описана в его книжке: Paradigms of Artificial Intelligence Programming
Если интересует действительно встроенный в язык пролог, то
стоит посмотреть на picolisp, хоть он и не CL.
Там пролог просто одна из важнейших частей системы. Поэтому и реализация приличная и вызов пролога из лиспа или лиспа из пролога прост и удобен.
вообще, говоря, мне внутри лисповой программы нужна функциональность, которую предоставляет clips, но, в принципе, я обошелся бы и прологом, при условии, что затраты времени на его «интеграцию» равнялись бы нулю.
За picolisp спасибо - посмотрю на сколько он мне подходит.
А вот когда я приблизительно так же сказал, на меня выпрыгнули то ли трое, то ли четверо и буквально в течение нескольких минут (что для ЛОРа весьма странно) орали: «Racket — это не лисп, не scheme, не лисп, не лисп, не ли...» :)
Любят же на ЛОРе микроскопическим буквоедством заниматься.
В документации Racket сказано: можете писать scheme-программы, совместимые с R6RS. Не пользуйтесь новыми «плюшками» и «вкусняшками» Racket, и получите, что хотите. R6RS — это чей стандарт?
Впрочем, ладно — спор этот бессмысленный. Не хочу терять время.
Потому что не обратно-совместим со scheme? Но racket же почти надмножество scheme, за исключением некоторых нюансов. Ну и racket не целиком покрывает r6rs, даже в некоторых местах кардинально.
Да просто достали уже. Стоит только упомянуть в одном комменте вместе Racket и scheme, как тут же вылезает как минимум два-три этаких вот тролля, и начинается: «а racket не scheme, а racket не лисп».
А начинаешь спрашивать уточнения и объяснения, ни одного толкового слова ни из кого не вытянешь.
Я уже выше объяснил, как я отношусь к racket, как к инструменту, а не как к предмету спора и троллинга. Да, я его ещё не освоил в полной мере, я и не скрываю этого.
А вообще, вся эта моя ругань к тебе лично в наименьшей мере относится. :) Ты почти всегда аргументируешь и объясняешь.
PS: Конечно, я ковыряю Racket на предмет его новых возможностей, которые делают его совершенно другим, не-scheme языком. Но времени на это маловато.
была на хабре статейка, как к Racket прикручивали парсер какого-то своего языка и получался компилятор своего языка за 15 минут. Сейчас что-то ссылку не найду.