Есть много реализаций Пролога в Схеме. Например. Канрен, Schelog.
Очевидно, что в "Парадигмах программирования ИИ" Norvig реализует компилятор Пролог-на-Лисп в Лиспе, чтобы использовать грамматики для определенных выражений.
Но есть ли более простой способ очистки? Может быть, какое-то умное использование amb, чтобы избежать реализации полного "Пролога"?
Какой самый простой способ провести разбор на основе DCG в Scheme?