resueltos recursividad recorrer organigrama listas lista funciones ejercicios prolog logic-programming

recursividad - ¿Alguna implementación de Prolog que permita la recursión a la izquierda?



recorrer lista prolog (1)

Su intuición es correcta, pero Prolog utiliza la primera búsqueda de profundidad por diseño (ver resolución SLDNF aquí ) y con buenas razones, entonces esa limitación no se puede evitar fácilmente.

OTOH, Ciao Prolog ofrece una extensión adecuada.

Puede simular la primera repetición de amplitud, utilizando un meta intérprete, como aquí, por ejemplo , para un DCG recursivo izquierdo (las gramáticas recursivas izquierdas son un caso común), pero generalmente no es una forma fácil de seguir.

IMO, la extensión más común que podría aproximar / satisfacer su solicitud, es la presentación , puede encontrarla en YAP Prolog, XSB, B-Prolog.

Me pregunto si hay alguna implementación de Prolog que permita la recursión a la izquierda en las cláusulas. Mi intuición es que si la implementación utiliza una búsqueda de objetivos de amplitud, puede admitir la recursividad a la izquierda. Pero no estoy muy seguro. Tenga en cuenta que no me importa mucho la eficiencia.