Pergunta

Muitas implementações Prolog-in-Scheme estão lá fora. Por exemplo. Kanren, Schelog.

Aparentemente, em "paradigmas da AI programação" implementos Norvig Prolog para-Lisp compilador em Lisp, a fim de usar gramática de cláusulas definidas.

Mas há uma maneira mais limpa mais simples? Talvez algum uso inteligente de embaixadores para evitar a implementação de um completo "Prolog"? Qual é a maneira mais fácil de ter a análise baseada em DCG no Esquema?

Foi útil?

Solução

DCG usar tanto unificação e retrocesso, então não há como evitar a implementação do núcleo do Prolog. Ou seja, você pode representar qualquer programa Prolog puro como um DCG analisar a lista vazia.

Você pode fazê-lo se você só se preocupam com algum caso especial de DCG, como aqueles sem variáveis ??(bom apenas para reconhecer, não analisar).

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top