Common Prolog provides a translator from Edinburgh syntax to allow users to port pre-existing code.
The consult
predicate operates only on .pl
files:
consult('xxx.pl')
means consult file xxx.pl
.consult('xxx')
. means find a file named xxx.pl
and consult it.
The reconsult
predicate can operate on a Lisp source file, since compile_and_reconsult('xxx.pl')
produces a Lisp binary file xxx.?fasl
. That is, reconsult
will load fasl and lisp files as well as .pl
files:
reconsult('xxx.pl')
means reconsult file xxx.pl
.reconsult('xxx')
means look for a file named xxx.?fasl
and load it, or if none found, look for xxx.pl
and reconsult it, or if none found look for xxx.lisp
and load it, or load xxx
.
Loading a compiled file is equivalent to reconsult
.
compile_and_reconsult
compiles a file and reconsults the result.
Edinburgh syntax may also be used to interact with Common Prolog through the use of a different read-query-print loop. To use Edinburgh syntax, use (erqp)
instead of (rqp)
to start your command loop.
KnowledgeWorks and Prolog User Guide (Unix version) - 24 Mar 2017