diff --git a/Logtalk/QUICK_START b/Logtalk/QUICK_START index b893a6dcc..e952ed7a9 100644 --- a/Logtalk/QUICK_START +++ b/Logtalk/QUICK_START @@ -1,6 +1,6 @@ ================================================================= Logtalk - Object oriented extension to Prolog -Release 2.9.2 +Release 2.9.3 Copyright (c) 1998-2002 Paulo Moura. All Rights Reserved. ================================================================= diff --git a/Logtalk/README b/Logtalk/README index 2a888d338..fedcf9214 100644 --- a/Logtalk/README +++ b/Logtalk/README @@ -1,6 +1,6 @@ ================================================================= Logtalk - Object oriented extension to Prolog -Release 2.9.2 +Release 2.9.3 Copyright (c) 1998-2002 Paulo Moura. All Rights Reserved. ================================================================= diff --git a/Logtalk/RELEASE_NOTES b/Logtalk/RELEASE_NOTES index b6fa9d467..acaba38e7 100644 --- a/Logtalk/RELEASE_NOTES +++ b/Logtalk/RELEASE_NOTES @@ -1,6 +1,6 @@ ================================================================= Logtalk - Object oriented extension to Prolog -Release 2.9.2 +Release 2.9.3 Copyright (c) 1998-2002 Paulo Moura. All Rights Reserved. ================================================================= @@ -10,6 +10,20 @@ RELEASE NOTES ============= +2.9.3 - February 9, 2002 + + New current_logtalk_flag/2 and set_logtalk_flag/2 built-in predicates. + + Updated documentation on new built-in predicates. + + Renamed SWI-Prolog config file swi330.config to swi.config. + + Renamed config file predicate lgt_default_compiler_option/2 to lgt_flag/2. + + New XSL stylesheets and shell scripts to convert Logtalk XML entity + documenting files to PDF format using XSL Formating Objects. + + 2.9.2 - January 4, 2002 The Logtalk compiler can now print a warning when compiling source files diff --git a/Logtalk/UPGRADING b/Logtalk/UPGRADING index f4ca0369b..9bd5dfd33 100644 --- a/Logtalk/UPGRADING +++ b/Logtalk/UPGRADING @@ -1,6 +1,6 @@ ================================================================= Logtalk - Object oriented extension to Prolog -Release 2.9.2 +Release 2.9.3 Copyright (c) 1998-2002 Paulo Moura. All Rights Reserved. ================================================================= diff --git a/Logtalk/examples/NOTES b/Logtalk/examples/NOTES index dd2fd557e..6fadba2b1 100644 --- a/Logtalk/examples/NOTES +++ b/Logtalk/examples/NOTES @@ -1,6 +1,6 @@ ================================================================= Logtalk - Object oriented extension to Prolog -Release 2.9.2 +Release 2.9.3 Copyright (c) 1998-2002 Paulo Moura. All Rights Reserved. ================================================================= diff --git a/Logtalk/examples/birds/NOTES b/Logtalk/examples/birds/NOTES index 03d42eb69..3349a25c7 100644 --- a/Logtalk/examples/birds/NOTES +++ b/Logtalk/examples/birds/NOTES @@ -1,6 +1,6 @@ ================================================================= Logtalk - Object oriented extension to Prolog -Release 2.9.2 +Release 2.9.3 Copyright (c) 1998-2002 Paulo Moura. All Rights Reserved. ================================================================= @@ -10,7 +10,9 @@ To load all objects in this example consult the birds.loader utility file. You will also need to also load the library/hierarchies.loader file. -Note that the *.loader files are Prolog files. +Note that the *.loader files are Prolog files. Alternatively, you may +load the library all.loader file to load all library entities. + This folder contains an example of a bird identification expert system adopted with permission from the book "Adventure in Prolog" by Amzi! inc. diff --git a/Logtalk/examples/birds/SCRIPT b/Logtalk/examples/birds/SCRIPT index a47af466e..4d9151791 100644 --- a/Logtalk/examples/birds/SCRIPT +++ b/Logtalk/examples/birds/SCRIPT @@ -1,6 +1,6 @@ ================================================================= Logtalk - Object oriented extension to Prolog -Release 2.9.2 +Release 2.9.3 Copyright (c) 1998-2002 Paulo Moura. All Rights Reserved. ================================================================= diff --git a/Logtalk/examples/bricks/NOTES b/Logtalk/examples/bricks/NOTES index 659942b83..1225ec890 100644 --- a/Logtalk/examples/bricks/NOTES +++ b/Logtalk/examples/bricks/NOTES @@ -1,6 +1,6 @@ ================================================================= Logtalk - Object oriented extension to Prolog -Release 2.9.2 +Release 2.9.3 Copyright (c) 1998-2002 Paulo Moura. All Rights Reserved. ================================================================= @@ -14,6 +14,8 @@ files). You will also need to consult the following files in the library directory: events.loader, types.loader, metapredicates.loader, and hierarchies.loader. +Alternatively, you may load the library all.loader file to load all library +entities. This folder contains an example of representation and handling of relations using events. We have instances of class brick and a binary diff --git a/Logtalk/examples/bricks/SCRIPT b/Logtalk/examples/bricks/SCRIPT index 259bea4b2..fffb08de7 100644 --- a/Logtalk/examples/bricks/SCRIPT +++ b/Logtalk/examples/bricks/SCRIPT @@ -1,6 +1,6 @@ ================================================================= Logtalk - Object oriented extension to Prolog -Release 2.9.2 +Release 2.9.3 Copyright (c) 1998-2002 Paulo Moura. All Rights Reserved. ================================================================= diff --git a/Logtalk/examples/classvars/NOTES b/Logtalk/examples/classvars/NOTES index f268e3cf8..2d7e3f8ba 100644 --- a/Logtalk/examples/classvars/NOTES +++ b/Logtalk/examples/classvars/NOTES @@ -1,6 +1,6 @@ ================================================================= Logtalk - Object oriented extension to Prolog -Release 2.9.2 +Release 2.9.3 Copyright (c) 1998-2002 Paulo Moura. All Rights Reserved. ================================================================= diff --git a/Logtalk/examples/classvars/SCRIPT b/Logtalk/examples/classvars/SCRIPT index 173c06a03..c8625604d 100644 --- a/Logtalk/examples/classvars/SCRIPT +++ b/Logtalk/examples/classvars/SCRIPT @@ -1,6 +1,6 @@ ================================================================= Logtalk - Object oriented extension to Prolog -Release 2.9.2 +Release 2.9.3 Copyright (c) 1998-2002 Paulo Moura. All Rights Reserved. ================================================================= diff --git a/Logtalk/examples/errors/NOTES b/Logtalk/examples/errors/NOTES index c8f06d7b1..172b4a62e 100644 --- a/Logtalk/examples/errors/NOTES +++ b/Logtalk/examples/errors/NOTES @@ -1,6 +1,6 @@ ================================================================= Logtalk - Object oriented extension to Prolog -Release 2.9.2 +Release 2.9.3 Copyright (c) 1998-2002 Paulo Moura. All Rights Reserved. ================================================================= diff --git a/Logtalk/examples/errors/portability.lgt b/Logtalk/examples/errors/portability.lgt index af4ba52c3..97ee5f7ea 100644 --- a/Logtalk/examples/errors/portability.lgt +++ b/Logtalk/examples/errors/portability.lgt @@ -1 +1,15 @@ - :- object(portability). :- public(predicate/0). predicate :- compare(Result, first, second), retractall(result(Result, _)), sort([], []), consult(file). :- end_object. \ No newline at end of file + +:- object(portability). + + + :- public(predicate/0). + + + predicate :- + compare(Result, first, second), + retractall(result(Result, _)), + sort([], []), + consult(file). + + +:- end_object. diff --git a/Logtalk/examples/inheritance/NOTES b/Logtalk/examples/inheritance/NOTES index 1ccf94608..315044fd7 100644 --- a/Logtalk/examples/inheritance/NOTES +++ b/Logtalk/examples/inheritance/NOTES @@ -1,6 +1,6 @@ ================================================================= Logtalk - Object oriented extension to Prolog -Release 2.9.2 +Release 2.9.3 Copyright (c) 1998-2002 Paulo Moura. All Rights Reserved. ================================================================= diff --git a/Logtalk/examples/inheritance/SCRIPT b/Logtalk/examples/inheritance/SCRIPT index a93ebb781..17a2584f2 100644 --- a/Logtalk/examples/inheritance/SCRIPT +++ b/Logtalk/examples/inheritance/SCRIPT @@ -1,6 +1,6 @@ ================================================================= Logtalk - Object oriented extension to Prolog -Release 2.9.2 +Release 2.9.3 Copyright (c) 1998-2002 Paulo Moura. All Rights Reserved. ================================================================= diff --git a/Logtalk/examples/instmethods/NOTES b/Logtalk/examples/instmethods/NOTES index 0695df9a1..539bb7b95 100644 --- a/Logtalk/examples/instmethods/NOTES +++ b/Logtalk/examples/instmethods/NOTES @@ -1,6 +1,6 @@ ================================================================= Logtalk - Object oriented extension to Prolog -Release 2.9.2 +Release 2.9.3 Copyright (c) 1998-2002 Paulo Moura. All Rights Reserved. ================================================================= diff --git a/Logtalk/examples/instmethods/SCRIPT b/Logtalk/examples/instmethods/SCRIPT index f3d0c6c77..a4d97936c 100644 --- a/Logtalk/examples/instmethods/SCRIPT +++ b/Logtalk/examples/instmethods/SCRIPT @@ -1,6 +1,6 @@ ================================================================= Logtalk - Object oriented extension to Prolog -Release 2.9.2 +Release 2.9.3 Copyright (c) 1998-2002 Paulo Moura. All Rights Reserved. ================================================================= diff --git a/Logtalk/examples/lo/NOTES b/Logtalk/examples/lo/NOTES index 080a22fa2..a89e10571 100644 --- a/Logtalk/examples/lo/NOTES +++ b/Logtalk/examples/lo/NOTES @@ -1,6 +1,6 @@ ================================================================= Logtalk - Object oriented extension to Prolog -Release 2.9.2 +Release 2.9.3 Copyright (c) 1998-2002 Paulo Moura. All Rights Reserved. ================================================================= diff --git a/Logtalk/examples/lo/planner/NOTES b/Logtalk/examples/lo/planner/NOTES index 192296742..0930c4b82 100644 --- a/Logtalk/examples/lo/planner/NOTES +++ b/Logtalk/examples/lo/planner/NOTES @@ -1,6 +1,6 @@ ================================================================= Logtalk - Object oriented extension to Prolog -Release 2.9.2 +Release 2.9.3 Copyright (c) 1998-2002 Paulo Moura. All Rights Reserved. ================================================================= diff --git a/Logtalk/examples/lo/planner/SCRIPT b/Logtalk/examples/lo/planner/SCRIPT index 7355ea914..c39840c7b 100644 --- a/Logtalk/examples/lo/planner/SCRIPT +++ b/Logtalk/examples/lo/planner/SCRIPT @@ -1,6 +1,6 @@ ================================================================= Logtalk - Object oriented extension to Prolog -Release 2.9.2 +Release 2.9.3 Copyright (c) 1998-2002 Paulo Moura. All Rights Reserved. ================================================================= diff --git a/Logtalk/examples/lo/travellers/NOTES b/Logtalk/examples/lo/travellers/NOTES index 62eb17b8c..217f2450e 100644 --- a/Logtalk/examples/lo/travellers/NOTES +++ b/Logtalk/examples/lo/travellers/NOTES @@ -1,6 +1,6 @@ ================================================================= Logtalk - Object oriented extension to Prolog -Release 2.9.2 +Release 2.9.3 Copyright (c) 1998-2002 Paulo Moura. All Rights Reserved. ================================================================= diff --git a/Logtalk/examples/lo/travellers/SCRIPT b/Logtalk/examples/lo/travellers/SCRIPT index 5b66f0918..b364da9fb 100644 --- a/Logtalk/examples/lo/travellers/SCRIPT +++ b/Logtalk/examples/lo/travellers/SCRIPT @@ -1,6 +1,6 @@ ================================================================= Logtalk - Object oriented extension to Prolog -Release 2.9.2 +Release 2.9.3 Copyright (c) 1998-2002 Paulo Moura. All Rights Reserved. ================================================================= diff --git a/Logtalk/examples/lpa/NOTES b/Logtalk/examples/lpa/NOTES index 96ff2bc01..ed59fe30b 100644 --- a/Logtalk/examples/lpa/NOTES +++ b/Logtalk/examples/lpa/NOTES @@ -1,6 +1,6 @@ ================================================================= Logtalk - Object oriented extension to Prolog -Release 2.9.2 +Release 2.9.3 Copyright (c) 1998-2002 Paulo Moura. All Rights Reserved. ================================================================= @@ -11,4 +11,6 @@ To load all objects in this example consult the lpa.loader utility file. You will also need to consult the library/hierarchies.loader file. -Note that the *.loader files are Prolog files. +Note that the *.loader files are Prolog files. Alternatively, you +may load the library/all.loader file to load all library entities. + diff --git a/Logtalk/examples/lpa/SCRIPT b/Logtalk/examples/lpa/SCRIPT index 25145b180..c26dfb442 100644 --- a/Logtalk/examples/lpa/SCRIPT +++ b/Logtalk/examples/lpa/SCRIPT @@ -1,6 +1,6 @@ ================================================================= Logtalk - Object oriented extension to Prolog -Release 2.9.2 +Release 2.9.3 Copyright (c) 1998-2002 Paulo Moura. All Rights Reserved. ================================================================= diff --git a/Logtalk/examples/metapredicates/NOTES b/Logtalk/examples/metapredicates/NOTES index 02a63f04d..d2c713b29 100644 --- a/Logtalk/examples/metapredicates/NOTES +++ b/Logtalk/examples/metapredicates/NOTES @@ -1,6 +1,6 @@ ================================================================= Logtalk - Object oriented extension to Prolog -Release 2.9.2 +Release 2.9.3 Copyright (c) 1998-2002 Paulo Moura. All Rights Reserved. ================================================================= @@ -9,7 +9,9 @@ To load all objects in this library consult the metapredicates.loader utility file. You will also need to load the library/types.loader file (note that the -*.loader files are Prolog files). +*.loader files are Prolog files). Alternatively, you may load the +library/all.loader file to load all library entities. + This example shows the use of metapredicates in Logtalk. Metapredicates are predicates whose head contains arguments that will be called as goals in the diff --git a/Logtalk/examples/metapredicates/SCRIPT b/Logtalk/examples/metapredicates/SCRIPT index 3d6729219..aff9bc9a6 100644 --- a/Logtalk/examples/metapredicates/SCRIPT +++ b/Logtalk/examples/metapredicates/SCRIPT @@ -1,6 +1,6 @@ ================================================================= Logtalk - Object oriented extension to Prolog -Release 2.9.2 +Release 2.9.3 Copyright (c) 1998-2002 Paulo Moura. All Rights Reserved. ================================================================= diff --git a/Logtalk/examples/mi/NOTES b/Logtalk/examples/mi/NOTES index 651e3bfc2..598a8d65f 100644 --- a/Logtalk/examples/mi/NOTES +++ b/Logtalk/examples/mi/NOTES @@ -1,6 +1,6 @@ ================================================================= Logtalk - Object oriented extension to Prolog -Release 2.9.2 +Release 2.9.3 Copyright (c) 1998-2002 Paulo Moura. All Rights Reserved. ================================================================= diff --git a/Logtalk/examples/mi/SCRIPT b/Logtalk/examples/mi/SCRIPT index 70f3cb1a3..1f0cb8baf 100644 --- a/Logtalk/examples/mi/SCRIPT +++ b/Logtalk/examples/mi/SCRIPT @@ -1,6 +1,6 @@ ================================================================= Logtalk - Object oriented extension to Prolog -Release 2.9.2 +Release 2.9.3 Copyright (c) 1998-2002 Paulo Moura. All Rights Reserved. ================================================================= diff --git a/Logtalk/examples/miscellaneous/NOTES b/Logtalk/examples/miscellaneous/NOTES index 1d3058378..10c6cd703 100644 --- a/Logtalk/examples/miscellaneous/NOTES +++ b/Logtalk/examples/miscellaneous/NOTES @@ -1,6 +1,6 @@ ================================================================= Logtalk - Object oriented extension to Prolog -Release 2.9.2 +Release 2.9.3 Copyright (c) 1998-2002 Paulo Moura. All Rights Reserved. ================================================================= @@ -8,7 +8,9 @@ Copyright (c) 1998-2002 Paulo Moura. All Rights Reserved. To load all objects in this library consult the miscellaneous.loader utility file (note that the *.loader files are Prolog files). -You will also need to load the library/types.loader file. +You will also need to load the library/types.loader file. Alternatively, you +may load the library/all.loader file to load all library entities. + hanoi.lgt Towers of Hanoi example diff --git a/Logtalk/examples/miscellaneous/SCRIPT b/Logtalk/examples/miscellaneous/SCRIPT index 7ac476061..60ffd7d87 100644 --- a/Logtalk/examples/miscellaneous/SCRIPT +++ b/Logtalk/examples/miscellaneous/SCRIPT @@ -1,6 +1,6 @@ ================================================================= Logtalk - Object oriented extension to Prolog -Release 2.9.2 +Release 2.9.3 Copyright (c) 1998-2002 Paulo Moura. All Rights Reserved. ================================================================= diff --git a/Logtalk/examples/parametric/NOTES b/Logtalk/examples/parametric/NOTES index a29b4e255..c2da98e90 100644 --- a/Logtalk/examples/parametric/NOTES +++ b/Logtalk/examples/parametric/NOTES @@ -1,6 +1,6 @@ ================================================================= Logtalk - Object oriented extension to Prolog -Release 2.9.2 +Release 2.9.3 Copyright (c) 1998-2002 Paulo Moura. All Rights Reserved. ================================================================= diff --git a/Logtalk/examples/parametric/SCRIPT b/Logtalk/examples/parametric/SCRIPT index 2cc0f4426..6adf9ed8a 100644 --- a/Logtalk/examples/parametric/SCRIPT +++ b/Logtalk/examples/parametric/SCRIPT @@ -1,6 +1,6 @@ ================================================================= Logtalk - Object oriented extension to Prolog -Release 2.9.2 +Release 2.9.3 Copyright (c) 1998-2002 Paulo Moura. All Rights Reserved. ================================================================= diff --git a/Logtalk/examples/points/NOTES b/Logtalk/examples/points/NOTES index 91df80021..8860a67a5 100644 --- a/Logtalk/examples/points/NOTES +++ b/Logtalk/examples/points/NOTES @@ -1,6 +1,6 @@ ================================================================= Logtalk - Object oriented extension to Prolog -Release 2.9.2 +Release 2.9.3 Copyright (c) 1998-2002 Paulo Moura. All Rights Reserved. ================================================================= @@ -15,6 +15,9 @@ files). You will also need to consult the following files in the library directory: events.loader, types.loader, metapredicates.loader, and hierarchies.loader. +Alternatively, you may load the library/all.loader file to load all library +entities. + You can find the original description of this example (and a solution using SICStus Objects) at the URL: diff --git a/Logtalk/examples/points/SCRIPT b/Logtalk/examples/points/SCRIPT index dfe9a68be..77d0b92d1 100644 --- a/Logtalk/examples/points/SCRIPT +++ b/Logtalk/examples/points/SCRIPT @@ -1,6 +1,6 @@ ================================================================= Logtalk - Object oriented extension to Prolog -Release 2.9.2 +Release 2.9.3 Copyright (c) 1998-2002 Paulo Moura. All Rights Reserved. ================================================================= diff --git a/Logtalk/examples/polygons/NOTES b/Logtalk/examples/polygons/NOTES index 89d952b10..44d2f795b 100644 --- a/Logtalk/examples/polygons/NOTES +++ b/Logtalk/examples/polygons/NOTES @@ -1,6 +1,6 @@ ================================================================= Logtalk - Object oriented extension to Prolog -Release 2.9.2 +Release 2.9.3 Copyright (c) 1998-2002 Paulo Moura. All Rights Reserved. ================================================================= @@ -14,6 +14,8 @@ files). You will also need to consult the following files in the library directory: events.loader, types.loader, metapredicates.loader, and hierarchies.loader. +Alternatively, you may load the library/all.loader file to load all library +entities. In this example we have several types of polygons that can be concentric. This is represented by a concentric binary relation ensuring that whenever diff --git a/Logtalk/examples/polygons/SCRIPT b/Logtalk/examples/polygons/SCRIPT index e88147a9b..b9067beb8 100644 --- a/Logtalk/examples/polygons/SCRIPT +++ b/Logtalk/examples/polygons/SCRIPT @@ -1,6 +1,6 @@ ================================================================= Logtalk - Object oriented extension to Prolog -Release 2.9.2 +Release 2.9.3 Copyright (c) 1998-2002 Paulo Moura. All Rights Reserved. ================================================================= diff --git a/Logtalk/examples/profiling/NOTES b/Logtalk/examples/profiling/NOTES index 021fa3e37..4200fd95e 100644 --- a/Logtalk/examples/profiling/NOTES +++ b/Logtalk/examples/profiling/NOTES @@ -1,6 +1,6 @@ ================================================================= Logtalk - Object oriented extension to Prolog -Release 2.9.2 +Release 2.9.3 Copyright (c) 1998-2002 Paulo Moura. All Rights Reserved. ================================================================= @@ -11,7 +11,9 @@ file. You will also need to load the following files in the library directory: types.loader, events.loader, metapredicates.loader, and dates.loader (note -that the *.loader files are Prolog files). +that the *.loader files are Prolog files). Alternatively, you may load the +library/all.loader file to load all library entities. + This is a very simple example of the use of events and monitors to make profilers for an application. It's easy to modify to make it do much more. diff --git a/Logtalk/examples/profiling/SCRIPT b/Logtalk/examples/profiling/SCRIPT index 87f0a9728..20be33b50 100644 --- a/Logtalk/examples/profiling/SCRIPT +++ b/Logtalk/examples/profiling/SCRIPT @@ -1,6 +1,6 @@ ================================================================= Logtalk - Object oriented extension to Prolog -Release 2.9.2 +Release 2.9.3 Copyright (c) 1998-2002 Paulo Moura. All Rights Reserved. ================================================================= diff --git a/Logtalk/examples/reflection/NOTES b/Logtalk/examples/reflection/NOTES index c37ff2cbd..5cc75d4f1 100644 --- a/Logtalk/examples/reflection/NOTES +++ b/Logtalk/examples/reflection/NOTES @@ -1,6 +1,6 @@ ================================================================= Logtalk - Object oriented extension to Prolog -Release 2.9.2 +Release 2.9.3 Copyright (c) 1998-2002 Paulo Moura. All Rights Reserved. ================================================================= diff --git a/Logtalk/examples/reflection/SCRIPT b/Logtalk/examples/reflection/SCRIPT index cf80cb8be..a1a71843d 100644 --- a/Logtalk/examples/reflection/SCRIPT +++ b/Logtalk/examples/reflection/SCRIPT @@ -1,6 +1,6 @@ ================================================================= Logtalk - Object oriented extension to Prolog -Release 2.9.2 +Release 2.9.3 Copyright (c) 1998-2002 Paulo Moura. All Rights Reserved. ================================================================= diff --git a/Logtalk/examples/relations/NOTES b/Logtalk/examples/relations/NOTES index 6fdfa01f0..b487f05bd 100644 --- a/Logtalk/examples/relations/NOTES +++ b/Logtalk/examples/relations/NOTES @@ -1,6 +1,6 @@ ================================================================= Logtalk - Object oriented extension to Prolog -Release 2.9.2 +Release 2.9.3 Copyright (c) 1998-2002 Paulo Moura. All Rights Reserved. ================================================================= diff --git a/Logtalk/examples/relations/SCRIPT b/Logtalk/examples/relations/SCRIPT index e49067c7d..500cdf083 100644 --- a/Logtalk/examples/relations/SCRIPT +++ b/Logtalk/examples/relations/SCRIPT @@ -1,6 +1,6 @@ ================================================================= Logtalk - Object oriented extension to Prolog -Release 2.9.2 +Release 2.9.3 Copyright (c) 1998-2002 Paulo Moura. All Rights Reserved. ================================================================= diff --git a/Logtalk/examples/roots/NOTES b/Logtalk/examples/roots/NOTES index 921aa938f..f05d7ff32 100644 --- a/Logtalk/examples/roots/NOTES +++ b/Logtalk/examples/roots/NOTES @@ -1,6 +1,6 @@ ================================================================= Logtalk - Object oriented extension to Prolog -Release 2.9.2 +Release 2.9.3 Copyright (c) 1998-2002 Paulo Moura. All Rights Reserved. ================================================================= @@ -10,7 +10,9 @@ To load all objects in this example consult the roots.loader utility file (note that the *.loader files are Prolog files). You will need to consult the following files in the library directory: -events.loader, types.loader, and hierarchies.loader. +events.loader, types.loader, and hierarchies.loader. Alternatively, you +may load the library/all.loader file to load all library entities. + This folder contains rewritten versions of some of the objects provided with previous, 1.x versions, of the Logtalk system. They are intended to diff --git a/Logtalk/examples/roots/SCRIPT b/Logtalk/examples/roots/SCRIPT index cfa55c2c1..7991c91a1 100644 --- a/Logtalk/examples/roots/SCRIPT +++ b/Logtalk/examples/roots/SCRIPT @@ -1,6 +1,6 @@ ================================================================= Logtalk - Object oriented extension to Prolog -Release 2.9.2 +Release 2.9.3 Copyright (c) 1998-2002 Paulo Moura. All Rights Reserved. ================================================================= diff --git a/Logtalk/examples/searching/NOTES b/Logtalk/examples/searching/NOTES index 0a012b95c..3106a6f19 100644 --- a/Logtalk/examples/searching/NOTES +++ b/Logtalk/examples/searching/NOTES @@ -1,6 +1,6 @@ ================================================================= Logtalk - Object oriented extension to Prolog -Release 2.9.2 +Release 2.9.3 Copyright (c) 1998-2002 Paulo Moura. All Rights Reserved. ================================================================= diff --git a/Logtalk/examples/searching/SCRIPT b/Logtalk/examples/searching/SCRIPT index 8aec512a3..8a3127238 100644 --- a/Logtalk/examples/searching/SCRIPT +++ b/Logtalk/examples/searching/SCRIPT @@ -1,6 +1,6 @@ ================================================================= Logtalk - Object oriented extension to Prolog -Release 2.9.2 +Release 2.9.3 Copyright (c) 1998-2002 Paulo Moura. All Rights Reserved. ================================================================= diff --git a/Logtalk/examples/sicstus/NOTES b/Logtalk/examples/sicstus/NOTES index 8171eb61a..63f3acf82 100644 --- a/Logtalk/examples/sicstus/NOTES +++ b/Logtalk/examples/sicstus/NOTES @@ -1,6 +1,6 @@ ================================================================= Logtalk - Object oriented extension to Prolog -Release 2.9.2 +Release 2.9.3 Copyright (c) 1998-2002 Paulo Moura. All Rights Reserved. ================================================================= @@ -11,4 +11,6 @@ To load all objects in this example consult the sicstus.loader utility file (note that the *.loader files are Prolog files). You will also need to load the following files in library directory: -hierarchies.loader and types.loader. +hierarchies.loader and types.loader. Alternatively, you may load the +library/all.loader file to load all library entities. + diff --git a/Logtalk/examples/sicstus/SCRIPT b/Logtalk/examples/sicstus/SCRIPT index 4449d6307..daca50e87 100644 --- a/Logtalk/examples/sicstus/SCRIPT +++ b/Logtalk/examples/sicstus/SCRIPT @@ -1,6 +1,6 @@ ================================================================= Logtalk - Object oriented extension to Prolog -Release 2.9.2 +Release 2.9.3 Copyright (c) 1998-2002 Paulo Moura. All Rights Reserved. ================================================================= diff --git a/Logtalk/examples/symdiff/NOTES b/Logtalk/examples/symdiff/NOTES index 0f6040dcb..8331579bb 100644 --- a/Logtalk/examples/symdiff/NOTES +++ b/Logtalk/examples/symdiff/NOTES @@ -1,6 +1,6 @@ ================================================================= Logtalk - Object oriented extension to Prolog -Release 2.9.2 +Release 2.9.3 Copyright (c) 1998-2002 Paulo Moura. All Rights Reserved. ================================================================= diff --git a/Logtalk/examples/symdiff/SCRIPT b/Logtalk/examples/symdiff/SCRIPT index 4cf791539..c28b06fb1 100644 --- a/Logtalk/examples/symdiff/SCRIPT +++ b/Logtalk/examples/symdiff/SCRIPT @@ -1,6 +1,6 @@ ================================================================= Logtalk - Object oriented extension to Prolog -Release 2.9.2 +Release 2.9.3 Copyright (c) 1998-2002 Paulo Moura. All Rights Reserved. ================================================================= diff --git a/Logtalk/examples/viewpoints/NOTES b/Logtalk/examples/viewpoints/NOTES index f1d76e7c0..61125beca 100644 --- a/Logtalk/examples/viewpoints/NOTES +++ b/Logtalk/examples/viewpoints/NOTES @@ -1,6 +1,6 @@ ================================================================= Logtalk - Object oriented extension to Prolog -Release 2.9.2 +Release 2.9.3 Copyright (c) 1998-2002 Paulo Moura. All Rights Reserved. ================================================================= diff --git a/Logtalk/examples/viewpoints/SCRIPT b/Logtalk/examples/viewpoints/SCRIPT index 8548f30ab..73722cc20 100644 --- a/Logtalk/examples/viewpoints/SCRIPT +++ b/Logtalk/examples/viewpoints/SCRIPT @@ -1,6 +1,6 @@ ================================================================= Logtalk - Object oriented extension to Prolog -Release 2.9.2 +Release 2.9.3 Copyright (c) 1998-2002 Paulo Moura. All Rights Reserved. ================================================================= diff --git a/Logtalk/library/NOTES b/Logtalk/library/NOTES index 1c82efa42..1767037e2 100644 --- a/Logtalk/library/NOTES +++ b/Logtalk/library/NOTES @@ -1,6 +1,6 @@ ================================================================= Logtalk - Object oriented extension to Prolog -Release 2.9.2 +Release 2.9.3 Copyright (c) 1998-2002 Paulo Moura. All Rights Reserved. ================================================================= diff --git a/Logtalk/library/SCRIPT b/Logtalk/library/SCRIPT index ebff17e77..f811c0a53 100644 --- a/Logtalk/library/SCRIPT +++ b/Logtalk/library/SCRIPT @@ -1,6 +1,6 @@ ================================================================= Logtalk - Object oriented extension to Prolog -Release 2.9.2 +Release 2.9.3 Copyright (c) 1998-2002 Paulo Moura. All Rights Reserved. ================================================================= diff --git a/Logtalk/library/all.notes b/Logtalk/library/all.notes index 683ab6d08..d2c0a0865 100644 --- a/Logtalk/library/all.notes +++ b/Logtalk/library/all.notes @@ -1,7 +1,7 @@ ================================================================= Logtalk - Object oriented extension to Prolog -Release 2.9.2 +Release 2.9.3 Copyright (c) 1998-2002 Paulo Moura. All Rights Reserved. ================================================================= diff --git a/Logtalk/library/dates.notes b/Logtalk/library/dates.notes index d871e5c2e..804c0c8f3 100644 --- a/Logtalk/library/dates.notes +++ b/Logtalk/library/dates.notes @@ -1,6 +1,6 @@ ================================================================= Logtalk - Object oriented extension to Prolog -Release 2.9.2 +Release 2.9.3 Copyright (c) 1998-2002 Paulo Moura. All Rights Reserved. ================================================================= diff --git a/Logtalk/library/debugging.notes b/Logtalk/library/debugging.notes index c22e206a7..0e5bcd008 100644 --- a/Logtalk/library/debugging.notes +++ b/Logtalk/library/debugging.notes @@ -1,6 +1,6 @@ ================================================================= Logtalk - Object oriented extension to Prolog -Release 2.9.2 +Release 2.9.3 Copyright (c) 1998-2002 Paulo Moura. All Rights Reserved. ================================================================= diff --git a/Logtalk/library/events.notes b/Logtalk/library/events.notes index b8c44c905..696b4c901 100644 --- a/Logtalk/library/events.notes +++ b/Logtalk/library/events.notes @@ -1,6 +1,6 @@ ================================================================= Logtalk - Object oriented extension to Prolog -Release 2.9.2 +Release 2.9.3 Copyright (c) 1998-2002 Paulo Moura. All Rights Reserved. ================================================================= diff --git a/Logtalk/library/hierarchies.notes b/Logtalk/library/hierarchies.notes index 80a0b408b..23a548831 100644 --- a/Logtalk/library/hierarchies.notes +++ b/Logtalk/library/hierarchies.notes @@ -1,6 +1,6 @@ ================================================================= Logtalk - Object oriented extension to Prolog -Release 2.9.2 +Release 2.9.3 Copyright (c) 1998-2002 Paulo Moura. All Rights Reserved. ================================================================= diff --git a/Logtalk/library/metapredicates.notes b/Logtalk/library/metapredicates.notes index d7189fadc..547db28db 100644 --- a/Logtalk/library/metapredicates.notes +++ b/Logtalk/library/metapredicates.notes @@ -1,6 +1,6 @@ ================================================================= Logtalk - Object oriented extension to Prolog -Release 2.9.2 +Release 2.9.3 Copyright (c) 1998-2002 Paulo Moura. All Rights Reserved. ================================================================= diff --git a/Logtalk/library/random.notes b/Logtalk/library/random.notes index 1286b31e8..d37176906 100644 --- a/Logtalk/library/random.notes +++ b/Logtalk/library/random.notes @@ -1,6 +1,6 @@ ================================================================= Logtalk - Object oriented extension to Prolog -Release 2.9.2 +Release 2.9.3 Copyright (c) 1998-2002 Paulo Moura. All Rights Reserved. ================================================================= diff --git a/Logtalk/library/types.notes b/Logtalk/library/types.notes index be3a4fd5d..d02a99851 100644 --- a/Logtalk/library/types.notes +++ b/Logtalk/library/types.notes @@ -1,6 +1,6 @@ ================================================================= Logtalk - Object oriented extension to Prolog -Release 2.9.2 +Release 2.9.3 Copyright (c) 1998-2002 Paulo Moura. All Rights Reserved. ================================================================= diff --git a/Logtalk/manuals/NOTES b/Logtalk/manuals/NOTES index efe80ee2c..3efe3c085 100644 --- a/Logtalk/manuals/NOTES +++ b/Logtalk/manuals/NOTES @@ -1,6 +1,6 @@ ================================================================= Logtalk - Object oriented extension to Prolog -Release 2.9.2 +Release 2.9.3 Copyright (c) 1998-2002 Paulo Moura. All Rights Reserved. ================================================================= diff --git a/Logtalk/manuals/index.html b/Logtalk/manuals/index.html index f67a6074c..59bbb2f27 100644 --- a/Logtalk/manuals/index.html +++ b/Logtalk/manuals/index.html @@ -4,14 +4,14 @@ - Logtalk 2.9.2 Documentation + Logtalk 2.9.3 Documentation
-

Logtalk 2.9.2

+

Logtalk 2.9.3

Documentation

@@ -44,7 +44,7 @@ Portugal


-Last updated on: December 30, 2001 +Last updated on: February 9, 2002

Valid HTML 4.01! diff --git a/Logtalk/manuals/refman/builtins/forall2.html b/Logtalk/manuals/refman/builtins/forall2.html index e8ed3964c..3872e5056 100644 --- a/Logtalk/manuals/refman/builtins/forall2.html +++ b/Logtalk/manuals/refman/builtins/forall2.html @@ -54,10 +54,10 @@ forall(+callable, +callable)


-Previous | Next | Table of Contents | Bibliography | Glossary +Previous | Next | Table of Contents | Bibliography | Glossary

-Last updated on: October 21, 2001 +Last updated on: February 9, 2002


diff --git a/Logtalk/manuals/refman/builtins/logtalk_load2.html b/Logtalk/manuals/refman/builtins/logtalk_load2.html index 3e00fc3c5..23c176689 100644 --- a/Logtalk/manuals/refman/builtins/logtalk_load2.html +++ b/Logtalk/manuals/refman/builtins/logtalk_load2.html @@ -72,10 +72,10 @@ logtalk_load(+atom_list, +list)

-Previous | Next | Table of Contents | Bibliography | Glossary +Previous | Next | Table of Contents | Bibliography | Glossary

-Last updated on: October 22, 2001 +Last updated on: February 9, 2002


diff --git a/Logtalk/manuals/refman/builtins/retractall1.html b/Logtalk/manuals/refman/builtins/retractall1.html index 69b4c0407..02b2f9fe1 100644 --- a/Logtalk/manuals/refman/builtins/retractall1.html +++ b/Logtalk/manuals/refman/builtins/retractall1.html @@ -55,7 +55,7 @@ retractall(+callable) Previous | Next | Table of Contents | Bibliography | Glossary

-Last updated on: October 21, 2001 +Last updated on: February 9, 2002


diff --git a/Logtalk/manuals/refman/index.html b/Logtalk/manuals/refman/index.html index b3b84e2e2..514e7edda 100644 --- a/Logtalk/manuals/refman/index.html +++ b/Logtalk/manuals/refman/index.html @@ -4,7 +4,7 @@ - Logtalk 2.9.2 Reference Manual + Logtalk 2.9.3 Reference Manual @@ -122,6 +122,11 @@
logtalk_load/1
logtalk_load/2
+
+
Flags
+
current_logtalk_flag/2
+
set_logtalk_flag/2
+
Others
forall/2
@@ -183,7 +188,7 @@ User manual | Tutorial | Bibliography | Glossary

-Last updated on: November 26, 2001 +Last updated on: February 9, 2002


diff --git a/Logtalk/manuals/refman/methods/parameter2.html b/Logtalk/manuals/refman/methods/parameter2.html index e03acede0..2544119af 100644 --- a/Logtalk/manuals/refman/methods/parameter2.html +++ b/Logtalk/manuals/refman/methods/parameter2.html @@ -68,7 +68,7 @@ parameter(+integer, ?term) Previous | Next | Table of Contents | Bibliography | Glossary

-Last updated on: October 21, 2001 +Last updated on: February 9, 2002


diff --git a/Logtalk/manuals/tutorial/index.html b/Logtalk/manuals/tutorial/index.html index 3c273d620..d42fb6d18 100644 --- a/Logtalk/manuals/tutorial/index.html +++ b/Logtalk/manuals/tutorial/index.html @@ -4,7 +4,7 @@ - Logtalk 2.9.2 Tutorial + Logtalk 2.9.3 Tutorial @@ -48,7 +48,7 @@ User manual | Reference manual | Bibliography | Glossary

-Last updated on: November 26, 2001 +Last updated on: February 9, 2002


diff --git a/Logtalk/manuals/userman/index.html b/Logtalk/manuals/userman/index.html index 0356c7415..00c616da8 100644 --- a/Logtalk/manuals/userman/index.html +++ b/Logtalk/manuals/userman/index.html @@ -4,7 +4,7 @@ - Logtalk 2.9.2 User Manual + Logtalk 2.9.3 User Manual @@ -198,7 +198,7 @@
Running a Logtalk session
Starting Logtalk
Compiling and loading your programs
-
Compiler options
+
Compiler option flags

Programming in Logtalk

@@ -216,7 +216,7 @@ Reference manual | Tutorial | Bibliography | Glossary

-Last updated on: December 30, 2001 +Last updated on: February 9, 2002


diff --git a/Logtalk/manuals/userman/installing.html b/Logtalk/manuals/userman/installing.html index 10f6e968a..75f7cce00 100644 --- a/Logtalk/manuals/userman/installing.html +++ b/Logtalk/manuals/userman/installing.html @@ -201,10 +201,10 @@ Both predicates expect a list of entity names (atoms) as an argument. The Logtal If you have more than a few source files then you may want to use a loader utility file containing the calls to the logtalk_load/1 predicate (see the description above). Consulting or compiling the loader file will then compile and load all your Logtalk entities into memory.

-

Compiler options

+

Compiler option flags

-The logtalk_load/1 and logtalk_compile/1 always use the set of default compiler options specified in the Logtalk configuration files. Although the default options cover the usual cases, you may want to use a different set of options while compiling or loading some of your Logtalk source files. This can be accomplished by using the logtalk_load/2 or the logtalk_compile/2 built-in predicates. These two predicates accept a list of options affecting how a Logtalk source file is compiled and loaded: +The logtalk_load/1 and logtalk_compile/1 always use the set of default compiler option flags specified in the Logtalk configuration files. Although the default options cover the usual cases, you may want to use a different set of options while compiling or loading some of your Logtalk source files. This can be accomplished by using the logtalk_load/2 or the logtalk_compile/2 built-in predicates. These two predicates accept a list of options affecting how a Logtalk source file is compiled and loaded:

     | ?- logtalk_compile(Files, Options).
@@ -262,12 +262,28 @@ You can use the following options:
 		
Controls the use of the initialization/1 directive in the Logtalk generated Prolog code. Possible option values are true (if the Prolog compiler supports the ISO definition of the directive) and false (if the Prolog compiler either does not implement the directive or if the implementation does not conform to the ISO standard).
+

+We may also change the default options values from the ones loaded from the config file by using the set_logtalk_flag/2 built-in predicate. For example: +

+    | ?- set_logtalk_flag(xml, off).
+
+

+

+The current values of the default flags can be enumerated using the current_logtalk_flag/2 built-in predicate: +

+
+    | ?- current_logtalk_flag(xml, Value).
+
+    Value = off
+    yes
+
+

Previous | Next | Table of Contents | Bibliography | Glossary

-Last updated on: December 30, 2001 +Last updated on: February 9, 2002


diff --git a/Logtalk/xml/NOTES b/Logtalk/xml/NOTES index fc242216b..1d7634b2e 100644 --- a/Logtalk/xml/NOTES +++ b/Logtalk/xml/NOTES @@ -1,25 +1,29 @@ ================================================================= Logtalk - Object oriented extension to Prolog -Release 2.9.2 +Release 2.9.3 Copyright (c) 1998-2002 Paulo Moura. All Rights Reserved. ================================================================= This folder contains several files that enables .xml documentation files -created when compiling objects, categories, or protocols, to be viewed -in a web browser that supports the W3C standards XML, XSLT, CSS and HTML 4 -or to be converted to LateX for printing. +created when compiling objects, categories, or protocols, to be converted +to PDF files, to be viewed in a web browser that supports the W3C standards +XML, XSLT, CSS and HTML 4, or to be converted to LateX for printing. You will need to either copy your .xml files to this directory or copy -these files to the directory where the .xml files reside. The links to -the .xsl files on the .xml files and the links to the .css files in the -generated .html files assume that all files reside in the same directory. +these files to the directory where the .xml files reside. + +Regarding conversion to HTML, the links to the .xsl files on the .xml +files and the links to the .css files in the generated .html files assume +that all files reside in the same directory. The choice of the default .xsl file to use is made in the config files by the lgt_default_compiler_option/2 predicate. You can also choose a different .xsl file by using the xsl/1 compiler option in the logtalk_compile/2 or logtalk_load/2 calls. The default file is lgtxml.xsl (described below). +Brief description of each file in this folder: + lgthtml.xsl @@ -37,6 +41,13 @@ lgtxml.xsl HTML files point to related XML files. +lgtpdfa4.xsl lgtpdfus.xsl + + XSLT files to generate PDF files from the .xml files (formatted either + for A4 paper or US Letter paper) using XSL Formatting Objects. Tested + with Apache Fop processor (http://xml.apache.org/fop). + + texml.xsl XSLT file to output TeXML files that can be further processed by @@ -47,9 +58,10 @@ texml.xsl ie5.xsl XSLT file for viewing .xml files in Microsoft Internet Explorer 5.x - (works with both Macintosh and Windows versions). The links in the - (internally generated) HTML files point to related XML files. It can - be used to browse and view the XML files directly. + (using the outdated Microsoft XML Parser; works with both Macintosh + and Windows versions). The links in the (internally generated) HTML + files point to related XML files. It can be used to browse and view + the XML files directly. logtalk.dtd @@ -70,18 +82,36 @@ logtalk.css in a web browser. -script.sh +html.sh - Sample unix shell script to batch convert .xml files to .html files. - Edit the file to match your environment. + Sample Unix shell script to batch convert .xml files to .html files. + Edit the script to match your environment before running it. + Requires James Clarck XT processor (http://www.jclark.com/xml/xt.html). -script.bat +html.bat - Sample dos batch script to convert .xml files to .html files. - Edit the file to match your environment. + Sample DOS batch script to convert .xml files to .html files. + Edit the script to match your environment before running it. + Requires James Clarck XT processor (http://www.jclark.com/xml/xt.html). + + +pdf.sh + + Sample Unix shell script to batch convert .xml files to .pdf files. + Edit the script to match your environment and paper format preference + before running it. + Requires Apache FOP processor (http://xml.apache.org/fop). + + +pdf.bat + + Sample DOS batch script to convert .xml files to .pdf files. + Edit the script to match your environment and paper format preference + before running it. + Requires Apache FOP processor (http://xml.apache.org/fop). Note that you can write other XSLT files for converting the XML files to -other formats besides HTML or LaTeX. You can also write alternative CSS -and XSLT files to change the appearance of the HTML and LaTeX files. +other formats besides PDF, HTML, or LaTeX. You can also write alternative +CSS and XSLT files to change the appearance of the HTML and LaTeX files. diff --git a/Logtalk/xml/ie50.xsl b/Logtalk/xml/ie50.xsl index d76f26a6f..a9c569aa1 100644 --- a/Logtalk/xml/ie50.xsl +++ b/Logtalk/xml/ie50.xsl @@ -8,7 +8,7 @@ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % % Logtalk - Object oriented extension to Prolog -% Release 2.9.2 +% Release 2.9.3 % % Copyright (c) 1998-2002 Paulo Moura. All Rights Reserved. % diff --git a/Logtalk/xml/lgthtml.xsl b/Logtalk/xml/lgthtml.xsl index f15878cf1..834b021b2 100644 --- a/Logtalk/xml/lgthtml.xsl +++ b/Logtalk/xml/lgthtml.xsl @@ -14,7 +14,7 @@ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % % Logtalk - Object oriented extension to Prolog -% Release 2.9.2 +% Release 2.9.3 % % Copyright (c) 1998-2002 Paulo Moura. All Rights Reserved. % diff --git a/Logtalk/xml/lgtxml.xsl b/Logtalk/xml/lgtxml.xsl index 12a584b37..0c1179704 100644 --- a/Logtalk/xml/lgtxml.xsl +++ b/Logtalk/xml/lgtxml.xsl @@ -14,7 +14,7 @@ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % % Logtalk - Object oriented extension to Prolog -% Release 2.9.2 +% Release 2.9.3 % % Copyright (c) 1998-2002 Paulo Moura. All Rights Reserved. % diff --git a/Logtalk/xml/logtalk.dtd b/Logtalk/xml/logtalk.dtd index edb05e50f..ca48a795e 100644 --- a/Logtalk/xml/logtalk.dtd +++ b/Logtalk/xml/logtalk.dtd @@ -3,7 +3,7 @@ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % % Logtalk - Object oriented extension to Prolog -% Release 2.9.2 +% Release 2.9.3 % % Copyright (c) 1998-2002 Paulo Moura. All Rights Reserved. % diff --git a/Logtalk/xml/logtalk.xsd b/Logtalk/xml/logtalk.xsd index d8fc980ff..21a44c077 100644 --- a/Logtalk/xml/logtalk.xsd +++ b/Logtalk/xml/logtalk.xsd @@ -15,7 +15,7 @@ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % % Logtalk - Object oriented extension to Prolog -% Release 2.9.2 +% Release 2.9.3 % % Copyright (c) 1998-2002 Paulo Moura. All Rights Reserved. % diff --git a/Logtalk/xml/texml.xsl b/Logtalk/xml/texml.xsl index b603365a5..3c775d65f 100644 --- a/Logtalk/xml/texml.xsl +++ b/Logtalk/xml/texml.xsl @@ -12,7 +12,7 @@ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % % Logtalk - Object oriented extension to Prolog -% Release 2.9.2 +% Release 2.9.3 % % Copyright (c) 1998-2002 Paulo Moura. All Rights Reserved. % diff --git a/library/logtalk/logtalk.pl b/library/logtalk/logtalk.pl index 4b61d0880..8d770aa42 100644 --- a/library/logtalk/logtalk.pl +++ b/library/logtalk/logtalk.pl @@ -2,7 +2,7 @@ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % % Logtalk - Object oriented extension to Prolog -% Release 2.9.2 +% Release 2.9.3 % % Copyright (c) 1998-2002 Paulo Moura. All Rights Reserved. % @@ -121,6 +121,7 @@ :- dynamic(lgt_calls_pred_/1). % lgt_calls_pred_(Functor/Arity) :- dynamic(lgt_current_compiler_option_/2). % lgt_current_compiler_option_(Option, Value) +:- dynamic(lgt_flag_/2). % lgt_flag_(Option, Value) :- dynamic(lgt_referenced_object_/1). % lgt_referenced_object_(Object) :- dynamic(lgt_referenced_protocol_/1). % lgt_referenced_protocol_(Protocol) @@ -839,10 +840,17 @@ abolish_events(after, Obj, Msg, Sender, Monitor) :- % gets/check the current value of a compiler option lgt_compiler_option(Option, Value) :- - lgt_current_compiler_option_(Option, Value2) -> - Value = Value2 - ; - lgt_default_compiler_option(Option, Value). + lgt_current_compiler_option_(Option, Value2), + !, + Value = Value2. + +lgt_compiler_option(Option, Value) :- + lgt_flag_(Option, Value2), + !, + Value = Value2. + +lgt_compiler_option(Option, Value) :- + lgt_default_flag(Option, Value). @@ -1009,7 +1017,66 @@ logtalk_version(Major, Minor, Patch) :- \+ integer(Patch), throw(error(type_error(integer, Patch), logtalk_version(Major, Minor, Patch))). -logtalk_version(2, 9, 2). +logtalk_version(2, 9, 3). + + + +% set_logtalk_flag(+atom, +nonvar) +% +% sets a Logtalk flag + +set_logtalk_flag(Flag, Value) :- + var(Flag), + throw(error(instantiation_error, set_logtalk_flag(Flag, Value))). + +set_logtalk_flag(Flag, Value) :- + var(Value), + throw(error(instantiation_error, set_logtalk_flag(Flag, Value))). + +set_logtalk_flag(Flag, Value) :- + nonvar(Flag), + \+ atom(Flag), + throw(error(type_error(atom, Flag), set_logtalk_flag(Flag, Value))). + +set_logtalk_flag(Flag, Value) :- + atom(Flag), + \+ lgt_valid_flag(Flag), + throw(error(domain_error(valid_flag, Flag), set_logtalk_flag(Flag, Value))). + +set_logtalk_flag(Flag, Value) :- + \+ lgt_valid_flag(Flag, Value), + throw(error(domain_error(valid_flag_value, Value), set_logtalk_flag(Flag, Value))). + +set_logtalk_flag(Flag, Value) :- + lgt_read_only_flag(Flag), + throw(error(domain_error(read_only_flag, Flag), set_logtalk_flag(Flag, Value))). + +set_logtalk_flag(Flag, Value) :- + retractall(lgt_flag_(Flag, _)), + assertz(lgt_flag_(Flag, Value)). + + + +% current_logtalk_flag(?atom, ?nonvar) +% +% tests/gets Logtalk flags + +current_logtalk_flag(Flag, Value) :- + nonvar(Flag), + \+ atom(Flag), + throw(error(type_error(atom, Flag), current_logtalk_flag(Flag, Value))). + +current_logtalk_flag(Flag, Value) :- + atom(Flag), + \+ lgt_valid_flag(Flag), + throw(error(domain_error(valid_flag, Flag), current_logtalk_flag(Flag, Value))). + +current_logtalk_flag(Flag, Value) :- + lgt_flag_(Flag, Value). + +current_logtalk_flag(Flag, Value) :- + \+ lgt_flag_(Flag, _), + lgt_default_flag(Flag, Value). @@ -2065,6 +2132,7 @@ lgt_dump_all :- listing(lgt_defs_pred_/1), listing(lgt_calls_pred_/1), listing(lgt_current_compiler_option_/2), + listing(lgt_flag_/2), listing(lgt_referenced_object_/1), listing(lgt_referenced_protocol_/1), listing(lgt_referenced_category_/1). @@ -5049,6 +5117,43 @@ lgt_valid_compiler_option(report(Option)) :- +% lgt_valid_flag(@nonvar) +% +% true if the argument is a valid Logtalk flag + +lgt_valid_flag(iso_initialization_dir). +lgt_valid_flag(xml). +lgt_valid_flag(xsl). +lgt_valid_flag(unknown). +lgt_valid_flag(singletons). +lgt_valid_flag(misspelt). +lgt_valid_flag(lgtredef). +lgt_valid_flag(plredef). +lgt_valid_flag(portability). +lgt_valid_flag(report). + + + +% lgt_valid_flag(@term, @term) +% +% true if the argument is a valid Logtalk flag-value pair + +lgt_valid_flag(Flag, Value) :- + atom(Flag), + Option =.. [Flag, Value], + lgt_valid_compiler_option(Option). + + + +% lgt_read_only_flag(@nonvar) +% +% true if the argument is a read only Logtalk flag + +lgt_read_only_flag(_) :- + fail. + + + % Logtalk built-in predicates % % lgt_lgt_built_in(?callable) @@ -5486,6 +5591,8 @@ lgt_write_xml_close_tag(Stream, Tag) :- % % table of ISO defined predicates % +% used in portability checking +% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% diff --git a/library/logtalk/yap430.config b/library/logtalk/yap430.config index 162fac0e2..a4f70adda 100644 --- a/library/logtalk/yap430.config +++ b/library/logtalk/yap430.config @@ -1,7 +1,7 @@ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % % Logtalk - Object oriented extension to Prolog -% Release 2.9.2 +% Release 2.9.3 % % configuration file for YAP Prolog 4.3.x % @@ -164,28 +164,28 @@ lgt_file_extension(xml, '.xml'). %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % -% default compiler options +% default flag values % %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -% lgt_default_compiler_option(?atom, ?atom) +% lgt_default_flag(?atom, ?atom) % -% default values for all compiler options +% default values for all flags -lgt_default_compiler_option(iso_initialization_dir, true). +lgt_default_flag(iso_initialization_dir, true). -lgt_default_compiler_option(xml, on). -lgt_default_compiler_option(xsl, 'lgtxml.xsl'). +lgt_default_flag(xml, on). +lgt_default_flag(xsl, 'lgtxml.xsl'). -lgt_default_compiler_option(unknown, warning). -lgt_default_compiler_option(misspelt, warning). -lgt_default_compiler_option(singletons, warning). -lgt_default_compiler_option(lgtredef, warning). -lgt_default_compiler_option(plredef, silent). -lgt_default_compiler_option(portability, silent). +lgt_default_flag(unknown, warning). +lgt_default_flag(misspelt, warning). +lgt_default_flag(singletons, warning). +lgt_default_flag(lgtredef, warning). +lgt_default_flag(plredef, silent). +lgt_default_flag(portability, silent). -lgt_default_compiler_option(report, on). +lgt_default_flag(report, on).