This repository has been archived on 2023-08-20. You can view files and clone it, but cannot push or open issues or pull requests.
yap-6.3/Logtalk/libpaths/NOTES

57 lines
2.4 KiB
Plaintext
Raw Normal View History

=================================================================
Logtalk - Object oriented extension to Prolog
Release 2.23.0
Copyright (c) 1998-2005 Paulo Moura. All Rights Reserved.
=================================================================
This folder contains a Prolog file, "libpaths.pl", which, when loaded,
defines the library paths for the Logtalk standard library and for all
the supplied examples. You may customize this file by adding the paths
to your own "libraries" in order to easily load your own source code.
In order to easily compile and load library and example source files using
the notation <library>(<entity>), you will need to load the "libpaths.pl"
into your Prolog compiler after loading the Logtalk compiler/runtime.
You might need to edit the "libpaths.pl" file in order to adapt it to reflect
your Logtalk installation and your Prolog compiler and operating-system
requirements (for example, some Prolog compilers do not accept or expand
environment variables occurring on paths).
As defined, the provided "libpaths.pl" file is already compatible with some
of the most popular Prolog compilers, running on both Windows, Unix, and
Unix-like operating-systems.
The Prolog integration scripts found on the "misc" directory generate scripts
and shortcuts that automatically load the copy of the "libpaths.pl" file from
the Logtalk end-user directory created by the "misc/cplgtdirs.*" scripts. See
the "INSTALL" and the "misc/NOTES" files for more details. Note that a few
Prolog compilers do not support the <library>(<entity>) notation. See the
"configs/NOTES" file for details.
The somehow contrived code found on the "libpaths.pl" file is needed to ensure
compatibility with both the ISO Prolog standard and with most Prolog compilers.
The code could be greatly simplified by using a multifile predicate directive
for the library path dynamic predicate. Unfortunately, not all Prolog compilers
support multifile predicates.
Some Prolog compilers which are expected to be compatible with the provided
"libpaths.pl" file as is, across operating systems:
* CIAO
* ECLiPSe
* GNU-Prolog
* K-Prolog
* Qu-Prolog
* SICStus Prolog
* SWI-Prolog
* YAP
Some Prolog compilers which imply editing the provided "libpaths.pl" file:
* JIProlog (does not support expansion of environment variables on paths)
* XSB (does not support expansion of environment variables on paths)
Feedback on other Prolog compilers are most appreciated.