We have just uploaded the new release of Jekejeke
Prolog. It mainly consists of new functionality
for Prolog texts:
- Module System I: Files are not anymore automatically
search in the class path, instead they are searched
relative to the actually consulted file. For class path
search new specifiers path/1 and library/1 have
been introduced.
The minlog extension does not automatically preload
CLP(FD) anymore. It can be loaded as follows:
?- ensure_loaded(library('clpfd.px')).
- Module System II: First support for modules via
the directives module/1 and use_module/2. Up till
now not yet selective import and no reexport/1. The
new tutorial example deals with rabbits:
It should also be noted that meta-calls dont need a
meta_predicate/1 declaration, even in the mutual
recursive case, since the resolution of predicate
names lazily uses the call-site information.
- Module System III: The use_module/1 directive is
only a synonym for ensure_loaded/1. Up till now we
did not yet implement full separate compilation.
If term/goal expansion is used the corresponding
rules have to be loaded before they are applied.
- Module System IV: The make/0 also works for modules.
Up till now we did not yet implement full separate
compilation. The module/2 directive allows op/3
declarations, but syntax changes are not yet
propagated.