| 1 | ================================================================ |
|---|
| 2 | Logtalk - Open source object-oriented logic programming language |
|---|
| 3 | Release 2.31.0 |
|---|
| 4 | |
|---|
| 5 | Copyright (c) 1998-2007 Paulo Moura. All Rights Reserved. |
|---|
| 6 | ================================================================ |
|---|
| 7 | |
|---|
| 8 | This folder contains a Prolog file, "libpaths.pl", which, when loaded, |
|---|
| 9 | defines the library paths for the Logtalk standard library and for all |
|---|
| 10 | the supplied examples. You may customize this file by adding the paths |
|---|
| 11 | to your own "libraries" in order to easily load your own source code. |
|---|
| 12 | |
|---|
| 13 | In order to easily compile and load library and example source files using |
|---|
| 14 | the notation <library>(<entity>), you will need to load the "libpaths.pl" |
|---|
| 15 | into your Prolog compiler after loading the Logtalk compiler/runtime. |
|---|
| 16 | |
|---|
| 17 | You might need to edit the "libpaths.pl" file in order to adapt it to |
|---|
| 18 | reflect your Logtalk installation, Prolog compiler, and operating-system |
|---|
| 19 | requirements (for example, some Prolog compilers do not accept or expand |
|---|
| 20 | environment variables occurring on paths). |
|---|
| 21 | |
|---|
| 22 | As defined, the provided "libpaths.pl" file is already compatible with |
|---|
| 23 | some of the most popular Prolog compilers, running on MacOS X, Linux, |
|---|
| 24 | Windows, Unix, and Unix-like operating-systems. |
|---|
| 25 | |
|---|
| 26 | The Prolog integration scripts, found on the "integration" directory, |
|---|
| 27 | automatically load the copy of the "libpaths.pl" file from the Logtalk |
|---|
| 28 | end-user directory created by the "scripts/cplgtdirs.*" scripts. See the |
|---|
| 29 | "INSTALL.txt" and "scripts/NOTES.txt" files for more details. Note that |
|---|
| 30 | some Prolog compilers do not support the <library>(<entity>) notation. |
|---|
| 31 | See the "configs/NOTES.txt" file for details. |
|---|
| 32 | |
|---|
| 33 | The somehow contrived code found on the "libpaths.pl" file is needed to |
|---|
| 34 | ensure compatibility with both the ISO Prolog standard and with most |
|---|
| 35 | Prolog compilers. The code could be greatly simplified by using a multifile |
|---|
| 36 | predicate directive for the library path dynamic predicate. Unfortunately, |
|---|
| 37 | not all Prolog compilers support multifile predicates. |
|---|
| 38 | |
|---|
| 39 | Prolog compilers that are expected to be compatible with the provided |
|---|
| 40 | "libpaths.pl" file as is, across operating-systems: |
|---|
| 41 | |
|---|
| 42 | * B-Prolog |
|---|
| 43 | * CIAO |
|---|
| 44 | * CxProlog |
|---|
| 45 | * ECLiPSe |
|---|
| 46 | * GNU-Prolog |
|---|
| 47 | * K-Prolog |
|---|
| 48 | * Qu-Prolog |
|---|
| 49 | * SICStus Prolog |
|---|
| 50 | * SWI-Prolog |
|---|
| 51 | * YAP |
|---|
| 52 | * XSB |
|---|
| 53 | |
|---|
| 54 | Prolog compilers that imply editing the provided "libpaths.pl" file due |
|---|
| 55 | to the lack of support for expanding environment variables on paths: |
|---|
| 56 | |
|---|
| 57 | * Amzi! Prolog |
|---|
| 58 | * IF/Prolog |
|---|
| 59 | * JIProlog |
|---|
| 60 | |
|---|
| 61 | Feedback on other Prolog compilers is most appreciated. |
|---|