portable - prolog online
Prolog existence_error siguiendo Siete idiomas en siete semanas (1)
Solo estoy siguiendo el libro Seven Languages in Seven Weeks.
He instalado gprolog en mi máquina Mac usando el port install gprolog-devel
comando port install gprolog-devel
y ejecuto el primer código de prólogo.
likes(wallace, cheese).
likes(grommit, cheese).
likes(wendolene, sheep).
friend(X, Y) :- /+(X = Y), likes(X, Z), likes(Y, Z).
Si likes(wallace, cheese).
me likes(wallace, cheese).
en el intérprete de prólogo, tengo un error
excepción no detectada: error (existence_error (procedure, likes / 2), top_level / 0).
Prolog 1.3.1 no se pudo instalar en mi Mac, estoy usando prolog 1.4.0.
El intérprete gprolog interactivo ejecuta consultas en una lista cargada de predicados, por eso obtienes la excepción existence_error
. Deberá cargar sus predicados en él, ya sea utilizando un IDE que realice la carga por usted o lo haga manualmente.
Aquí hay un enfoque:
| ?- [user].
compiling user for byte code...
likes(wallace, cheese).
likes(grommit, cheese).
likes(wendolene, sheep).
friend(X, Y) :- /+(X = Y), likes(X, Z), likes(Y, Z).
* Press Ctrl-D to end input. *
user compiled, 6 lines read - 909 bytes written, 15538 ms
yes
| ?- friend(wallace,grommit).
yes
| ?- friend(wallace,wendolene).
no
El manual de gprolog escribe sobre esto en el capítulo Consulting a Prolog program