From 5345523da375bda2c179b4f82893bfc45eef81da Mon Sep 17 00:00:00 2001 From: pmoura Date: Wed, 31 Jul 2002 23:34:42 +0000 Subject: [PATCH] Logtalk release 2.14.1 files. git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@561 b08c6af1-5177-4d33-ba66-4b1c6b8b522a --- Logtalk/QUICK_START | 4 +- Logtalk/README | 7 +- Logtalk/RELEASE_NOTES | 37 +- Logtalk/UPGRADING | 2 +- Logtalk/examples/NOTES | 2 +- Logtalk/examples/birds/NOTES | 2 +- Logtalk/examples/birds/SCRIPT | 2 +- Logtalk/examples/bricks/NOTES | 2 +- Logtalk/examples/bricks/SCRIPT | 2 +- Logtalk/examples/classvars/NOTES | 2 +- Logtalk/examples/classvars/SCRIPT | 2 +- Logtalk/examples/dynpred/NOTES | 2 +- Logtalk/examples/dynpred/SCRIPT | 2 +- Logtalk/examples/dynpred/instance.lgt | 7 +- Logtalk/examples/errors/NOTES | 2 +- Logtalk/examples/errors/portability.lgt | 16 +- Logtalk/examples/inheritance/NOTES | 2 +- Logtalk/examples/inheritance/SCRIPT | 2 +- Logtalk/examples/instmethods/NOTES | 2 +- Logtalk/examples/instmethods/SCRIPT | 2 +- Logtalk/examples/lo/NOTES | 2 +- Logtalk/examples/lo/planner/NOTES | 2 +- Logtalk/examples/lo/planner/SCRIPT | 2 +- Logtalk/examples/lo/travellers/NOTES | 2 +- Logtalk/examples/lo/travellers/SCRIPT | 2 +- Logtalk/examples/lpa/NOTES | 2 +- Logtalk/examples/lpa/SCRIPT | 2 +- Logtalk/examples/metapredicates/NOTES | 2 +- Logtalk/examples/metapredicates/SCRIPT | 2 +- Logtalk/examples/mi/NOTES | 2 +- Logtalk/examples/mi/SCRIPT | 2 +- Logtalk/examples/miscellaneous/NOTES | 2 +- Logtalk/examples/miscellaneous/SCRIPT | 2 +- Logtalk/examples/parametric/NOTES | 2 +- Logtalk/examples/parametric/SCRIPT | 2 +- Logtalk/examples/parametric/date3.lgt | 2 +- Logtalk/examples/parametric/time3.lgt | 2 +- Logtalk/examples/points/NOTES | 2 +- Logtalk/examples/points/SCRIPT | 2 +- Logtalk/examples/polygons/NOTES | 2 +- Logtalk/examples/polygons/SCRIPT | 2 +- Logtalk/examples/profiling/NOTES | 2 +- Logtalk/examples/profiling/SCRIPT | 2 +- Logtalk/examples/reflection/NOTES | 2 +- Logtalk/examples/reflection/SCRIPT | 2 +- Logtalk/examples/relations/NOTES | 2 +- Logtalk/examples/relations/SCRIPT | 2 +- Logtalk/examples/roots/NOTES | 2 +- Logtalk/examples/roots/SCRIPT | 2 +- Logtalk/examples/searching/NOTES | 2 +- Logtalk/examples/searching/SCRIPT | 2 +- Logtalk/examples/sicstus/NOTES | 2 +- Logtalk/examples/sicstus/SCRIPT | 2 +- Logtalk/examples/symdiff/NOTES | 2 +- Logtalk/examples/symdiff/SCRIPT | 2 +- Logtalk/examples/viewpoints/NOTES | 2 +- Logtalk/examples/viewpoints/SCRIPT | 2 +- Logtalk/manuals/NOTES | 2 +- Logtalk/manuals/bibliography.html | 15 +- Logtalk/manuals/glossary.html | 15 +- Logtalk/manuals/index.html | 25 +- .../refman/builtins/abolish_category1.html | 13 +- .../refman/builtins/abolish_events5.html | 13 +- .../refman/builtins/abolish_object1.html | 13 +- .../refman/builtins/abolish_protocol1.html | 13 +- .../refman/builtins/category_property2.html | 13 +- .../refman/builtins/create_category4.html | 13 +- .../refman/builtins/create_object4.html | 13 +- .../refman/builtins/create_protocol3.html | 13 +- .../refman/builtins/current_category1.html | 13 +- .../refman/builtins/current_event5.html | 13 +- .../builtins/current_logtalk_flag2.html | 13 +- .../refman/builtins/current_object1.html | 13 +- .../refman/builtins/current_protocol1.html | 13 +- .../refman/builtins/define_events5.html | 13 +- .../refman/builtins/extends_object2_3.html | 13 +- .../refman/builtins/extends_protocol2_3.html | 13 +- Logtalk/manuals/refman/builtins/forall2.html | 13 +- .../builtins/implements_protocol2_3.html | 13 +- .../refman/builtins/imports_category2_3.html | 13 +- .../builtins/instantiates_class2_3.html | 13 +- .../refman/builtins/logtalk_compile1.html | 13 +- .../refman/builtins/logtalk_compile2.html | 13 +- .../refman/builtins/logtalk_load1.html | 13 +- .../refman/builtins/logtalk_load2.html | 13 +- .../refman/builtins/logtalk_version3.html | 13 +- .../refman/builtins/object_property2.html | 13 +- .../refman/builtins/protocol_property2.html | 13 +- .../manuals/refman/builtins/retractall1.html | 13 +- .../refman/builtins/set_logtalk_flag2.html | 13 +- .../refman/builtins/specializes_class2_3.html | 13 +- Logtalk/manuals/refman/control/external1.html | 15 +- .../manuals/refman/control/to_object2.html | 13 +- Logtalk/manuals/refman/control/to_self1.html | 13 +- Logtalk/manuals/refman/control/to_super1.html | 13 +- Logtalk/manuals/refman/directives/calls1.html | 13 +- .../refman/directives/category1_2.html | 13 +- .../refman/directives/discontiguous1.html | 13 +- .../manuals/refman/directives/dynamic0.html | 13 +- .../manuals/refman/directives/dynamic1.html | 13 +- .../refman/directives/end_category0.html | 13 +- .../refman/directives/end_object0.html | 13 +- .../refman/directives/end_protocol0.html | 13 +- Logtalk/manuals/refman/directives/info1.html | 13 +- Logtalk/manuals/refman/directives/info2.html | 13 +- .../refman/directives/initialization1.html | 13 +- .../refman/directives/metapredicate1.html | 13 +- Logtalk/manuals/refman/directives/mode2.html | 13 +- .../manuals/refman/directives/object1_4.html | 13 +- Logtalk/manuals/refman/directives/op3.html | 14 +- .../manuals/refman/directives/private1.html | 13 +- .../manuals/refman/directives/protected1.html | 13 +- .../refman/directives/protocol1_2.html | 13 +- .../manuals/refman/directives/public1.html | 13 +- Logtalk/manuals/refman/directives/uses1.html | 13 +- Logtalk/manuals/refman/grammar.html | 13 +- Logtalk/manuals/refman/index.html | 13 +- Logtalk/manuals/refman/methods/abolish1.html | 13 +- Logtalk/manuals/refman/methods/after3.html | 13 +- Logtalk/manuals/refman/methods/asserta1.html | 13 +- Logtalk/manuals/refman/methods/assertz1.html | 13 +- Logtalk/manuals/refman/methods/bagof3.html | 13 +- Logtalk/manuals/refman/methods/before3.html | 13 +- Logtalk/manuals/refman/methods/clause2.html | 13 +- .../refman/methods/current_predicate1.html | 13 +- Logtalk/manuals/refman/methods/findall3.html | 13 +- Logtalk/manuals/refman/methods/forall2.html | 13 +- .../manuals/refman/methods/parameter2.html | 13 +- .../refman/methods/predicate_property2.html | 13 +- Logtalk/manuals/refman/methods/retract1.html | 13 +- .../manuals/refman/methods/retractall1.html | 13 +- Logtalk/manuals/refman/methods/self1.html | 13 +- Logtalk/manuals/refman/methods/sender1.html | 13 +- Logtalk/manuals/refman/methods/setof3.html | 13 +- Logtalk/manuals/refman/methods/this1.html | 13 +- Logtalk/manuals/tutorial/attributes.html | 13 +- Logtalk/manuals/tutorial/index.html | 13 +- Logtalk/manuals/tutorial/lists.html | 15 +- Logtalk/manuals/tutorial/profiling.html | 13 +- Logtalk/manuals/tutorial/reflection.html | 13 +- Logtalk/manuals/userman/categories.html | 13 +- Logtalk/manuals/userman/configuration.html | 13 +- Logtalk/manuals/userman/documenting.html | 15 +- Logtalk/manuals/userman/errors.html | 15 +- Logtalk/manuals/userman/events.html | 13 +- Logtalk/manuals/userman/features.html | 13 +- Logtalk/manuals/userman/index.html | 13 +- Logtalk/manuals/userman/inheritance.html | 13 +- Logtalk/manuals/userman/installing.html | 23 +- Logtalk/manuals/userman/messages.html | 13 +- Logtalk/manuals/userman/objects.html | 13 +- Logtalk/manuals/userman/predicates.html | 13 +- Logtalk/manuals/userman/programming.html | 13 +- Logtalk/manuals/userman/protocols.html | 13 +- Logtalk/wenv/NOTES | 2 +- Logtalk/wenv/logtalk.pats | 53 +- Logtalk/wenv/logtalk.syn | 620 +-- Logtalk/xml/NOTES | 19 +- Logtalk/xml/html.sh | 48 +- Logtalk/xml/ie50.xsl | 2 +- Logtalk/xml/lgthtml.xsl | 2 +- Logtalk/xml/lgtpdfa4.xsl | 2 +- Logtalk/xml/lgtpdfus.xsl | 2 +- Logtalk/xml/lgtxml.xsl | 2 +- Logtalk/xml/logtalk.dtd | 2 +- Logtalk/xml/logtalk.xsd | 2 +- Logtalk/xml/texml.xsl | 2 +- library/logtalk/logtalk.pl | 4605 +++++++++-------- library/logtalk/yap430.config | 132 +- 169 files changed, 3660 insertions(+), 3295 deletions(-) diff --git a/Logtalk/QUICK_START b/Logtalk/QUICK_START index 5b890441d..441cfdf2c 100644 --- a/Logtalk/QUICK_START +++ b/Logtalk/QUICK_START @@ -1,6 +1,6 @@ ================================================================= Logtalk - Object oriented extension to Prolog -Release 2.13.0 +Release 2.14.1 Copyright (c) 1998-2002 Paulo Moura. All Rights Reserved. ================================================================= @@ -36,7 +36,7 @@ Note that both the configuration files and the compiler/pre-processor files are Prolog files. The predicate called to load these files depends on your Prolog compiler. In case of doubt, consult your Prolog compiler reference manual or take a look at the definition of the predicate -lgt_load_prolog_code/1 in the configuration file. +$lgt_load_prolog_code/1 in the configuration file. Now you can try some of the included examples: diff --git a/Logtalk/README b/Logtalk/README index c8105dc49..17e7e4fda 100644 --- a/Logtalk/README +++ b/Logtalk/README @@ -1,6 +1,6 @@ ================================================================= Logtalk - Object oriented extension to Prolog -Release 2.13.0 +Release 2.14.1 Copyright (c) 1998-2002 Paulo Moura. All Rights Reserved. ================================================================= @@ -26,6 +26,9 @@ license. The copyright notice and license applies to all files in this release (sources, documentation and examples) unless otherwise explicitly stated. +This software is OSI Certified Open Source Software. OSI Certified is a +certification mark of the Open Source Initiative (http://www.opensource.org/). + 2. HOME OF LOGTALK PACKAGE @@ -87,7 +90,7 @@ file manuals/index.html with a web browser). 6. DOCUMENTATION -The reference and user manuals and the tutorial are provided in HTML format +The reference and user manuals and the tutorial are provided in XHTML format and are contained in the manuals directory. PDF versions of all documentation are also available as a separated download diff --git a/Logtalk/RELEASE_NOTES b/Logtalk/RELEASE_NOTES index 9cd3b00e4..033eb9c23 100644 --- a/Logtalk/RELEASE_NOTES +++ b/Logtalk/RELEASE_NOTES @@ -1,6 +1,6 @@ ================================================================= Logtalk - Object oriented extension to Prolog -Release 2.13.0 +Release 2.14.1 Copyright (c) 1998-2002 Paulo Moura. All Rights Reserved. ================================================================= @@ -10,6 +10,41 @@ RELEASE NOTES ============= +2.14.1 - July 31, 2002 + + New Windows NT script and updated Unix shell script for batch converting + XML documenting files to HTML. Both scripts also generate an index.html + file containing links to all converted XML documenting files. + + Corrected wrong XHTML DOCTYPE declaration in manual pages. + + +2.14.0 - July 26, 2002 + + Renamed all compiler and runtime internal predicates and all auxiliary + predicates in the config files to start with a "$" character. + + New compiler option, code_prefix, to set a prefix for all Prolog code + functors generated by Logtalk when compiling entities. Default is ''. + + New compiler option, named_anonymous_vars, that instructs the compiler to + interpret variables that start with an underscore as anonymous variables + (and to not report them as singleton variables). Default value is "off". + + Directive info/2 was wrongly declared as a entity directive instead of a + predicate directive. + + Converted all manual pages to XHTML 1.0 format. Corrected a wrong link in + the reference manual. Replaced GIF images by PNG versions. + + Updated BProlog 6.x config file to workaround the new 6.2 built-in + predicate ::/2 that conflicts with the same named Logtalk message sending + operator. + + Removed call to the obsolete built-in predicate nodbgcomp/0 from all + ECLiPSe config files. + + 2.13.0 - June 15, 2002 Logtalk now outputs Prolog code using write_canonical/2 instead of diff --git a/Logtalk/UPGRADING b/Logtalk/UPGRADING index 109565f84..f6389be55 100644 --- a/Logtalk/UPGRADING +++ b/Logtalk/UPGRADING @@ -1,6 +1,6 @@ ================================================================= Logtalk - Object oriented extension to Prolog -Release 2.13.0 +Release 2.14.1 Copyright (c) 1998-2002 Paulo Moura. All Rights Reserved. ================================================================= diff --git a/Logtalk/examples/NOTES b/Logtalk/examples/NOTES index 28dd2de5d..42fcd0ead 100644 --- a/Logtalk/examples/NOTES +++ b/Logtalk/examples/NOTES @@ -1,6 +1,6 @@ ================================================================= Logtalk - Object oriented extension to Prolog -Release 2.13.0 +Release 2.14.1 Copyright (c) 1998-2002 Paulo Moura. All Rights Reserved. ================================================================= diff --git a/Logtalk/examples/birds/NOTES b/Logtalk/examples/birds/NOTES index 05ca46abc..3afd55437 100644 --- a/Logtalk/examples/birds/NOTES +++ b/Logtalk/examples/birds/NOTES @@ -1,6 +1,6 @@ ================================================================= Logtalk - Object oriented extension to Prolog -Release 2.13.0 +Release 2.14.1 Copyright (c) 1998-2002 Paulo Moura. All Rights Reserved. ================================================================= diff --git a/Logtalk/examples/birds/SCRIPT b/Logtalk/examples/birds/SCRIPT index 235beea28..7109050c6 100644 --- a/Logtalk/examples/birds/SCRIPT +++ b/Logtalk/examples/birds/SCRIPT @@ -1,6 +1,6 @@ ================================================================= Logtalk - Object oriented extension to Prolog -Release 2.13.0 +Release 2.14.1 Copyright (c) 1998-2002 Paulo Moura. All Rights Reserved. ================================================================= diff --git a/Logtalk/examples/bricks/NOTES b/Logtalk/examples/bricks/NOTES index 8487f8191..00e181697 100644 --- a/Logtalk/examples/bricks/NOTES +++ b/Logtalk/examples/bricks/NOTES @@ -1,6 +1,6 @@ ================================================================= Logtalk - Object oriented extension to Prolog -Release 2.13.0 +Release 2.14.1 Copyright (c) 1998-2002 Paulo Moura. All Rights Reserved. ================================================================= diff --git a/Logtalk/examples/bricks/SCRIPT b/Logtalk/examples/bricks/SCRIPT index fd41a49ae..1548a87a3 100644 --- a/Logtalk/examples/bricks/SCRIPT +++ b/Logtalk/examples/bricks/SCRIPT @@ -1,6 +1,6 @@ ================================================================= Logtalk - Object oriented extension to Prolog -Release 2.13.0 +Release 2.14.1 Copyright (c) 1998-2002 Paulo Moura. All Rights Reserved. ================================================================= diff --git a/Logtalk/examples/classvars/NOTES b/Logtalk/examples/classvars/NOTES index af2ad9a7a..ac7a82345 100644 --- a/Logtalk/examples/classvars/NOTES +++ b/Logtalk/examples/classvars/NOTES @@ -1,6 +1,6 @@ ================================================================= Logtalk - Object oriented extension to Prolog -Release 2.13.0 +Release 2.14.1 Copyright (c) 1998-2002 Paulo Moura. All Rights Reserved. ================================================================= diff --git a/Logtalk/examples/classvars/SCRIPT b/Logtalk/examples/classvars/SCRIPT index 4a0a68d8b..a4b80c1f8 100644 --- a/Logtalk/examples/classvars/SCRIPT +++ b/Logtalk/examples/classvars/SCRIPT @@ -1,6 +1,6 @@ ================================================================= Logtalk - Object oriented extension to Prolog -Release 2.13.0 +Release 2.14.1 Copyright (c) 1998-2002 Paulo Moura. All Rights Reserved. ================================================================= diff --git a/Logtalk/examples/dynpred/NOTES b/Logtalk/examples/dynpred/NOTES index aa976256a..8d1136994 100644 --- a/Logtalk/examples/dynpred/NOTES +++ b/Logtalk/examples/dynpred/NOTES @@ -1,6 +1,6 @@ ================================================================= Logtalk - Object oriented extension to Prolog -Release 2.13.0 +Release 2.14.1 Copyright (c) 1998-2002 Paulo Moura. All Rights Reserved. ================================================================= diff --git a/Logtalk/examples/dynpred/SCRIPT b/Logtalk/examples/dynpred/SCRIPT index 60a438d91..20ca9d07d 100644 --- a/Logtalk/examples/dynpred/SCRIPT +++ b/Logtalk/examples/dynpred/SCRIPT @@ -1,6 +1,6 @@ ================================================================= Logtalk - Object oriented extension to Prolog -Release 2.13.0 +Release 2.14.1 Copyright (c) 1998-2002 Paulo Moura. All Rights Reserved. ================================================================= diff --git a/Logtalk/examples/dynpred/instance.lgt b/Logtalk/examples/dynpred/instance.lgt index cc0e6392c..ea9524000 100644 --- a/Logtalk/examples/dynpred/instance.lgt +++ b/Logtalk/examples/dynpred/instance.lgt @@ -1,6 +1 @@ - -:- object(instance, - instantiates(class)). - - -:- end_object. + :- object(instance, instantiates(class)). :- end_object. \ No newline at end of file diff --git a/Logtalk/examples/errors/NOTES b/Logtalk/examples/errors/NOTES index 2c645f9c9..7b2f92d2e 100644 --- a/Logtalk/examples/errors/NOTES +++ b/Logtalk/examples/errors/NOTES @@ -1,6 +1,6 @@ ================================================================= Logtalk - Object oriented extension to Prolog -Release 2.13.0 +Release 2.14.1 Copyright (c) 1998-2002 Paulo Moura. All Rights Reserved. ================================================================= diff --git a/Logtalk/examples/errors/portability.lgt b/Logtalk/examples/errors/portability.lgt index 97ee5f7ea..af4ba52c3 100644 --- a/Logtalk/examples/errors/portability.lgt +++ b/Logtalk/examples/errors/portability.lgt @@ -1,15 +1 @@ - -:- object(portability). - - - :- public(predicate/0). - - - predicate :- - compare(Result, first, second), - retractall(result(Result, _)), - sort([], []), - consult(file). - - -:- end_object. + :- object(portability). :- public(predicate/0). predicate :- compare(Result, first, second), retractall(result(Result, _)), sort([], []), consult(file). :- end_object. \ No newline at end of file diff --git a/Logtalk/examples/inheritance/NOTES b/Logtalk/examples/inheritance/NOTES index f615de743..f5467cde2 100644 --- a/Logtalk/examples/inheritance/NOTES +++ b/Logtalk/examples/inheritance/NOTES @@ -1,6 +1,6 @@ ================================================================= Logtalk - Object oriented extension to Prolog -Release 2.13.0 +Release 2.14.1 Copyright (c) 1998-2002 Paulo Moura. All Rights Reserved. ================================================================= diff --git a/Logtalk/examples/inheritance/SCRIPT b/Logtalk/examples/inheritance/SCRIPT index 0225514a7..de5ab6e3e 100644 --- a/Logtalk/examples/inheritance/SCRIPT +++ b/Logtalk/examples/inheritance/SCRIPT @@ -1,6 +1,6 @@ ================================================================= Logtalk - Object oriented extension to Prolog -Release 2.13.0 +Release 2.14.1 Copyright (c) 1998-2002 Paulo Moura. All Rights Reserved. ================================================================= diff --git a/Logtalk/examples/instmethods/NOTES b/Logtalk/examples/instmethods/NOTES index 8d88c6da6..1fa92d3de 100644 --- a/Logtalk/examples/instmethods/NOTES +++ b/Logtalk/examples/instmethods/NOTES @@ -1,6 +1,6 @@ ================================================================= Logtalk - Object oriented extension to Prolog -Release 2.13.0 +Release 2.14.1 Copyright (c) 1998-2002 Paulo Moura. All Rights Reserved. ================================================================= diff --git a/Logtalk/examples/instmethods/SCRIPT b/Logtalk/examples/instmethods/SCRIPT index 36ecdb8f9..c19d7012e 100644 --- a/Logtalk/examples/instmethods/SCRIPT +++ b/Logtalk/examples/instmethods/SCRIPT @@ -1,6 +1,6 @@ ================================================================= Logtalk - Object oriented extension to Prolog -Release 2.13.0 +Release 2.14.1 Copyright (c) 1998-2002 Paulo Moura. All Rights Reserved. ================================================================= diff --git a/Logtalk/examples/lo/NOTES b/Logtalk/examples/lo/NOTES index b73a2c971..3563f1ec4 100644 --- a/Logtalk/examples/lo/NOTES +++ b/Logtalk/examples/lo/NOTES @@ -1,6 +1,6 @@ ================================================================= Logtalk - Object oriented extension to Prolog -Release 2.13.0 +Release 2.14.1 Copyright (c) 1998-2002 Paulo Moura. All Rights Reserved. ================================================================= diff --git a/Logtalk/examples/lo/planner/NOTES b/Logtalk/examples/lo/planner/NOTES index 969487d95..fd6106f2c 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.13.0 +Release 2.14.1 Copyright (c) 1998-2002 Paulo Moura. All Rights Reserved. ================================================================= diff --git a/Logtalk/examples/lo/planner/SCRIPT b/Logtalk/examples/lo/planner/SCRIPT index a6e23d4f6..9494c78a4 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.13.0 +Release 2.14.1 Copyright (c) 1998-2002 Paulo Moura. All Rights Reserved. ================================================================= diff --git a/Logtalk/examples/lo/travellers/NOTES b/Logtalk/examples/lo/travellers/NOTES index 93be40c6d..5be9d67e5 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.13.0 +Release 2.14.1 Copyright (c) 1998-2002 Paulo Moura. All Rights Reserved. ================================================================= diff --git a/Logtalk/examples/lo/travellers/SCRIPT b/Logtalk/examples/lo/travellers/SCRIPT index 516fd57bd..c7736415f 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.13.0 +Release 2.14.1 Copyright (c) 1998-2002 Paulo Moura. All Rights Reserved. ================================================================= diff --git a/Logtalk/examples/lpa/NOTES b/Logtalk/examples/lpa/NOTES index e472a76b6..17abc58d5 100644 --- a/Logtalk/examples/lpa/NOTES +++ b/Logtalk/examples/lpa/NOTES @@ -1,6 +1,6 @@ ================================================================= Logtalk - Object oriented extension to Prolog -Release 2.13.0 +Release 2.14.1 Copyright (c) 1998-2002 Paulo Moura. All Rights Reserved. ================================================================= diff --git a/Logtalk/examples/lpa/SCRIPT b/Logtalk/examples/lpa/SCRIPT index c09c4986d..47e401d45 100644 --- a/Logtalk/examples/lpa/SCRIPT +++ b/Logtalk/examples/lpa/SCRIPT @@ -1,6 +1,6 @@ ================================================================= Logtalk - Object oriented extension to Prolog -Release 2.13.0 +Release 2.14.1 Copyright (c) 1998-2002 Paulo Moura. All Rights Reserved. ================================================================= diff --git a/Logtalk/examples/metapredicates/NOTES b/Logtalk/examples/metapredicates/NOTES index 0ea261b55..e3fc38252 100644 --- a/Logtalk/examples/metapredicates/NOTES +++ b/Logtalk/examples/metapredicates/NOTES @@ -1,6 +1,6 @@ ================================================================= Logtalk - Object oriented extension to Prolog -Release 2.13.0 +Release 2.14.1 Copyright (c) 1998-2002 Paulo Moura. All Rights Reserved. ================================================================= diff --git a/Logtalk/examples/metapredicates/SCRIPT b/Logtalk/examples/metapredicates/SCRIPT index 688d43e58..bcfd846d2 100644 --- a/Logtalk/examples/metapredicates/SCRIPT +++ b/Logtalk/examples/metapredicates/SCRIPT @@ -1,6 +1,6 @@ ================================================================= Logtalk - Object oriented extension to Prolog -Release 2.13.0 +Release 2.14.1 Copyright (c) 1998-2002 Paulo Moura. All Rights Reserved. ================================================================= diff --git a/Logtalk/examples/mi/NOTES b/Logtalk/examples/mi/NOTES index 6323af911..b723b6237 100644 --- a/Logtalk/examples/mi/NOTES +++ b/Logtalk/examples/mi/NOTES @@ -1,6 +1,6 @@ ================================================================= Logtalk - Object oriented extension to Prolog -Release 2.13.0 +Release 2.14.1 Copyright (c) 1998-2002 Paulo Moura. All Rights Reserved. ================================================================= diff --git a/Logtalk/examples/mi/SCRIPT b/Logtalk/examples/mi/SCRIPT index bf7d597c3..272a1e556 100644 --- a/Logtalk/examples/mi/SCRIPT +++ b/Logtalk/examples/mi/SCRIPT @@ -1,6 +1,6 @@ ================================================================= Logtalk - Object oriented extension to Prolog -Release 2.13.0 +Release 2.14.1 Copyright (c) 1998-2002 Paulo Moura. All Rights Reserved. ================================================================= diff --git a/Logtalk/examples/miscellaneous/NOTES b/Logtalk/examples/miscellaneous/NOTES index e54d6f995..0ca595d8a 100644 --- a/Logtalk/examples/miscellaneous/NOTES +++ b/Logtalk/examples/miscellaneous/NOTES @@ -1,6 +1,6 @@ ================================================================= Logtalk - Object oriented extension to Prolog -Release 2.13.0 +Release 2.14.1 Copyright (c) 1998-2002 Paulo Moura. All Rights Reserved. ================================================================= diff --git a/Logtalk/examples/miscellaneous/SCRIPT b/Logtalk/examples/miscellaneous/SCRIPT index 86c7c1494..dcb305dff 100644 --- a/Logtalk/examples/miscellaneous/SCRIPT +++ b/Logtalk/examples/miscellaneous/SCRIPT @@ -1,6 +1,6 @@ ================================================================= Logtalk - Object oriented extension to Prolog -Release 2.13.0 +Release 2.14.1 Copyright (c) 1998-2002 Paulo Moura. All Rights Reserved. ================================================================= diff --git a/Logtalk/examples/parametric/NOTES b/Logtalk/examples/parametric/NOTES index 84cf5466a..e2ffaad43 100644 --- a/Logtalk/examples/parametric/NOTES +++ b/Logtalk/examples/parametric/NOTES @@ -1,6 +1,6 @@ ================================================================= Logtalk - Object oriented extension to Prolog -Release 2.13.0 +Release 2.14.1 Copyright (c) 1998-2002 Paulo Moura. All Rights Reserved. ================================================================= diff --git a/Logtalk/examples/parametric/SCRIPT b/Logtalk/examples/parametric/SCRIPT index e583a4ba0..11a78f486 100644 --- a/Logtalk/examples/parametric/SCRIPT +++ b/Logtalk/examples/parametric/SCRIPT @@ -1,6 +1,6 @@ ================================================================= Logtalk - Object oriented extension to Prolog -Release 2.13.0 +Release 2.14.1 Copyright (c) 1998-2002 Paulo Moura. All Rights Reserved. ================================================================= diff --git a/Logtalk/examples/parametric/date3.lgt b/Logtalk/examples/parametric/date3.lgt index 24f007e3f..e0100da5b 100644 --- a/Logtalk/examples/parametric/date3.lgt +++ b/Logtalk/examples/parametric/date3.lgt @@ -39,7 +39,7 @@ today :- - {lgt_current_date(Year, Month, Day)}, + {'$lgt_current_date'(Year, Month, Day)}, parameter(1, Year), parameter(2, Month), parameter(3, Day). diff --git a/Logtalk/examples/parametric/time3.lgt b/Logtalk/examples/parametric/time3.lgt index fb2be28f4..333e7ef1f 100644 --- a/Logtalk/examples/parametric/time3.lgt +++ b/Logtalk/examples/parametric/time3.lgt @@ -36,7 +36,7 @@ now :- - {lgt_current_time(Hours, Mins, Secs)}, + {'$lgt_current_time'(Hours, Mins, Secs)}, parameter(1, Hours), parameter(2, Mins), parameter(3, Secs). diff --git a/Logtalk/examples/points/NOTES b/Logtalk/examples/points/NOTES index fe4d42be8..a864f8119 100644 --- a/Logtalk/examples/points/NOTES +++ b/Logtalk/examples/points/NOTES @@ -1,6 +1,6 @@ ================================================================= Logtalk - Object oriented extension to Prolog -Release 2.13.0 +Release 2.14.1 Copyright (c) 1998-2002 Paulo Moura. All Rights Reserved. ================================================================= diff --git a/Logtalk/examples/points/SCRIPT b/Logtalk/examples/points/SCRIPT index 63ebf9e2e..a039f5993 100644 --- a/Logtalk/examples/points/SCRIPT +++ b/Logtalk/examples/points/SCRIPT @@ -1,6 +1,6 @@ ================================================================= Logtalk - Object oriented extension to Prolog -Release 2.13.0 +Release 2.14.1 Copyright (c) 1998-2002 Paulo Moura. All Rights Reserved. ================================================================= diff --git a/Logtalk/examples/polygons/NOTES b/Logtalk/examples/polygons/NOTES index 58f8776ed..42869cf04 100644 --- a/Logtalk/examples/polygons/NOTES +++ b/Logtalk/examples/polygons/NOTES @@ -1,6 +1,6 @@ ================================================================= Logtalk - Object oriented extension to Prolog -Release 2.13.0 +Release 2.14.1 Copyright (c) 1998-2002 Paulo Moura. All Rights Reserved. ================================================================= diff --git a/Logtalk/examples/polygons/SCRIPT b/Logtalk/examples/polygons/SCRIPT index 115c23df9..c554410b5 100644 --- a/Logtalk/examples/polygons/SCRIPT +++ b/Logtalk/examples/polygons/SCRIPT @@ -1,6 +1,6 @@ ================================================================= Logtalk - Object oriented extension to Prolog -Release 2.13.0 +Release 2.14.1 Copyright (c) 1998-2002 Paulo Moura. All Rights Reserved. ================================================================= diff --git a/Logtalk/examples/profiling/NOTES b/Logtalk/examples/profiling/NOTES index f2ed224e2..817518640 100644 --- a/Logtalk/examples/profiling/NOTES +++ b/Logtalk/examples/profiling/NOTES @@ -1,6 +1,6 @@ ================================================================= Logtalk - Object oriented extension to Prolog -Release 2.13.0 +Release 2.14.1 Copyright (c) 1998-2002 Paulo Moura. All Rights Reserved. ================================================================= diff --git a/Logtalk/examples/profiling/SCRIPT b/Logtalk/examples/profiling/SCRIPT index e14a3de40..b046a8363 100644 --- a/Logtalk/examples/profiling/SCRIPT +++ b/Logtalk/examples/profiling/SCRIPT @@ -1,6 +1,6 @@ ================================================================= Logtalk - Object oriented extension to Prolog -Release 2.13.0 +Release 2.14.1 Copyright (c) 1998-2002 Paulo Moura. All Rights Reserved. ================================================================= diff --git a/Logtalk/examples/reflection/NOTES b/Logtalk/examples/reflection/NOTES index 864fabfea..7fa19a155 100644 --- a/Logtalk/examples/reflection/NOTES +++ b/Logtalk/examples/reflection/NOTES @@ -1,6 +1,6 @@ ================================================================= Logtalk - Object oriented extension to Prolog -Release 2.13.0 +Release 2.14.1 Copyright (c) 1998-2002 Paulo Moura. All Rights Reserved. ================================================================= diff --git a/Logtalk/examples/reflection/SCRIPT b/Logtalk/examples/reflection/SCRIPT index 53210ad5b..8e003c13b 100644 --- a/Logtalk/examples/reflection/SCRIPT +++ b/Logtalk/examples/reflection/SCRIPT @@ -1,6 +1,6 @@ ================================================================= Logtalk - Object oriented extension to Prolog -Release 2.13.0 +Release 2.14.1 Copyright (c) 1998-2002 Paulo Moura. All Rights Reserved. ================================================================= diff --git a/Logtalk/examples/relations/NOTES b/Logtalk/examples/relations/NOTES index 16a480ee8..c27c81c09 100644 --- a/Logtalk/examples/relations/NOTES +++ b/Logtalk/examples/relations/NOTES @@ -1,6 +1,6 @@ ================================================================= Logtalk - Object oriented extension to Prolog -Release 2.13.0 +Release 2.14.1 Copyright (c) 1998-2002 Paulo Moura. All Rights Reserved. ================================================================= diff --git a/Logtalk/examples/relations/SCRIPT b/Logtalk/examples/relations/SCRIPT index 9542b9808..deb670e30 100644 --- a/Logtalk/examples/relations/SCRIPT +++ b/Logtalk/examples/relations/SCRIPT @@ -1,6 +1,6 @@ ================================================================= Logtalk - Object oriented extension to Prolog -Release 2.13.0 +Release 2.14.1 Copyright (c) 1998-2002 Paulo Moura. All Rights Reserved. ================================================================= diff --git a/Logtalk/examples/roots/NOTES b/Logtalk/examples/roots/NOTES index 5b521c9d6..f53e2af6b 100644 --- a/Logtalk/examples/roots/NOTES +++ b/Logtalk/examples/roots/NOTES @@ -1,6 +1,6 @@ ================================================================= Logtalk - Object oriented extension to Prolog -Release 2.13.0 +Release 2.14.1 Copyright (c) 1998-2002 Paulo Moura. All Rights Reserved. ================================================================= diff --git a/Logtalk/examples/roots/SCRIPT b/Logtalk/examples/roots/SCRIPT index 42fe9d26c..e321f3fd7 100644 --- a/Logtalk/examples/roots/SCRIPT +++ b/Logtalk/examples/roots/SCRIPT @@ -1,6 +1,6 @@ ================================================================= Logtalk - Object oriented extension to Prolog -Release 2.13.0 +Release 2.14.1 Copyright (c) 1998-2002 Paulo Moura. All Rights Reserved. ================================================================= diff --git a/Logtalk/examples/searching/NOTES b/Logtalk/examples/searching/NOTES index 485e19497..8a9dfaf5f 100644 --- a/Logtalk/examples/searching/NOTES +++ b/Logtalk/examples/searching/NOTES @@ -1,6 +1,6 @@ ================================================================= Logtalk - Object oriented extension to Prolog -Release 2.13.0 +Release 2.14.1 Copyright (c) 1998-2002 Paulo Moura. All Rights Reserved. ================================================================= diff --git a/Logtalk/examples/searching/SCRIPT b/Logtalk/examples/searching/SCRIPT index d4de3f7fa..186d68586 100644 --- a/Logtalk/examples/searching/SCRIPT +++ b/Logtalk/examples/searching/SCRIPT @@ -1,6 +1,6 @@ ================================================================= Logtalk - Object oriented extension to Prolog -Release 2.13.0 +Release 2.14.1 Copyright (c) 1998-2002 Paulo Moura. All Rights Reserved. ================================================================= diff --git a/Logtalk/examples/sicstus/NOTES b/Logtalk/examples/sicstus/NOTES index 4e69e3274..dbb0bdf32 100644 --- a/Logtalk/examples/sicstus/NOTES +++ b/Logtalk/examples/sicstus/NOTES @@ -1,6 +1,6 @@ ================================================================= Logtalk - Object oriented extension to Prolog -Release 2.13.0 +Release 2.14.1 Copyright (c) 1998-2002 Paulo Moura. All Rights Reserved. ================================================================= diff --git a/Logtalk/examples/sicstus/SCRIPT b/Logtalk/examples/sicstus/SCRIPT index ffb128c27..a95c9db98 100644 --- a/Logtalk/examples/sicstus/SCRIPT +++ b/Logtalk/examples/sicstus/SCRIPT @@ -1,6 +1,6 @@ ================================================================= Logtalk - Object oriented extension to Prolog -Release 2.13.0 +Release 2.14.1 Copyright (c) 1998-2002 Paulo Moura. All Rights Reserved. ================================================================= diff --git a/Logtalk/examples/symdiff/NOTES b/Logtalk/examples/symdiff/NOTES index a94128083..206d8bdef 100644 --- a/Logtalk/examples/symdiff/NOTES +++ b/Logtalk/examples/symdiff/NOTES @@ -1,6 +1,6 @@ ================================================================= Logtalk - Object oriented extension to Prolog -Release 2.13.0 +Release 2.14.1 Copyright (c) 1998-2002 Paulo Moura. All Rights Reserved. ================================================================= diff --git a/Logtalk/examples/symdiff/SCRIPT b/Logtalk/examples/symdiff/SCRIPT index 28c1d7388..526132fff 100644 --- a/Logtalk/examples/symdiff/SCRIPT +++ b/Logtalk/examples/symdiff/SCRIPT @@ -1,6 +1,6 @@ ================================================================= Logtalk - Object oriented extension to Prolog -Release 2.13.0 +Release 2.14.1 Copyright (c) 1998-2002 Paulo Moura. All Rights Reserved. ================================================================= diff --git a/Logtalk/examples/viewpoints/NOTES b/Logtalk/examples/viewpoints/NOTES index 6401dec88..30646f712 100644 --- a/Logtalk/examples/viewpoints/NOTES +++ b/Logtalk/examples/viewpoints/NOTES @@ -1,6 +1,6 @@ ================================================================= Logtalk - Object oriented extension to Prolog -Release 2.13.0 +Release 2.14.1 Copyright (c) 1998-2002 Paulo Moura. All Rights Reserved. ================================================================= diff --git a/Logtalk/examples/viewpoints/SCRIPT b/Logtalk/examples/viewpoints/SCRIPT index d95da184f..011744bfd 100644 --- a/Logtalk/examples/viewpoints/SCRIPT +++ b/Logtalk/examples/viewpoints/SCRIPT @@ -1,6 +1,6 @@ ================================================================= Logtalk - Object oriented extension to Prolog -Release 2.13.0 +Release 2.14.1 Copyright (c) 1998-2002 Paulo Moura. All Rights Reserved. ================================================================= diff --git a/Logtalk/manuals/NOTES b/Logtalk/manuals/NOTES index 3af7f2371..bd71c8c58 100644 --- a/Logtalk/manuals/NOTES +++ b/Logtalk/manuals/NOTES @@ -1,6 +1,6 @@ ================================================================= Logtalk - Object oriented extension to Prolog -Release 2.13.0 +Release 2.14.1 Copyright (c) 1998-2002 Paulo Moura. All Rights Reserved. ================================================================= diff --git a/Logtalk/manuals/bibliography.html b/Logtalk/manuals/bibliography.html index f5e519b2c..201743ed5 100644 --- a/Logtalk/manuals/bibliography.html +++ b/Logtalk/manuals/bibliography.html @@ -1,11 +1,14 @@ - + + - + + + Logtalk Bibliography - + @@ -250,10 +253,10 @@ More references can be found in the -User manual | Reference manual | Glossary +User manual | Reference manual | Tutorial | Glossary

-Last updated on: February 10, 2001 +Last updated on: July 29, 2002


diff --git a/Logtalk/manuals/glossary.html b/Logtalk/manuals/glossary.html index 338bd92cd..06c79f138 100644 --- a/Logtalk/manuals/glossary.html +++ b/Logtalk/manuals/glossary.html @@ -1,11 +1,14 @@ - + + - + + + Logtalk Glossary - + @@ -164,10 +167,10 @@

-User manual | Reference manual | Bibliography +User manual | Reference manual | Tutorial | Bibliography

-Last updated on: February 10, 2001 +Last updated on: July 29, 2002


diff --git a/Logtalk/manuals/index.html b/Logtalk/manuals/index.html index 680ec4280..b84d7d5b4 100644 --- a/Logtalk/manuals/index.html +++ b/Logtalk/manuals/index.html @@ -1,17 +1,20 @@ - + + - + + + - Logtalk 2.13.0 Documentation - + Logtalk 2.14.1 Documentation +
-

Logtalk 2.13.0

+

Logtalk 2.14.1

Documentation

@@ -19,7 +22,7 @@ (pmoura@logtalk.org)

-Logtalk.org +Logtalk.org


@@ -42,12 +45,12 @@

-Last updated on: June 15, 2002 +Last updated on: July 29, 2002

-Valid HTML 4.01! -Valid CSS! -Made with a Macintosh +Valid XHTML 1.0! +Valid CSS! +Made with a Macintosh


diff --git a/Logtalk/manuals/refman/builtins/abolish_category1.html b/Logtalk/manuals/refman/builtins/abolish_category1.html index 94f14defb..77de6c2f5 100644 --- a/Logtalk/manuals/refman/builtins/abolish_category1.html +++ b/Logtalk/manuals/refman/builtins/abolish_category1.html @@ -1,11 +1,14 @@ - + + - + + + abolish_category/1 - + @@ -61,7 +64,7 @@ abolish_category(@category_identifier) Previous | Next | Table of Contents | Bibliography | Glossary

-Last updated on: October 21, 2001 +Last updated on: July 29, 2002


diff --git a/Logtalk/manuals/refman/builtins/abolish_events5.html b/Logtalk/manuals/refman/builtins/abolish_events5.html index 6bae51f63..edeecc4f8 100644 --- a/Logtalk/manuals/refman/builtins/abolish_events5.html +++ b/Logtalk/manuals/refman/builtins/abolish_events5.html @@ -1,11 +1,14 @@ - + + - + + + abolish_events/5 - + @@ -63,7 +66,7 @@ abolish_events(@event, @object_identifier, @callable, @object_identifier, @objec Previous | Next | Table of Contents | Bibliography | Glossary

-Last updated on: October 21, 2001 +Last updated on: July 29, 2002


diff --git a/Logtalk/manuals/refman/builtins/abolish_object1.html b/Logtalk/manuals/refman/builtins/abolish_object1.html index a9c28dabd..e9a9c351b 100644 --- a/Logtalk/manuals/refman/builtins/abolish_object1.html +++ b/Logtalk/manuals/refman/builtins/abolish_object1.html @@ -1,11 +1,14 @@ - + + - + + + abolish_object/1 - + @@ -62,7 +65,7 @@ abolish_object(@object_identifier) Previous | Next | Table of Contents | Bibliography | Glossary

-Last updated on: October 21, 2001 +Last updated on: July 29, 2002


diff --git a/Logtalk/manuals/refman/builtins/abolish_protocol1.html b/Logtalk/manuals/refman/builtins/abolish_protocol1.html index 54463e211..7ff712ba3 100644 --- a/Logtalk/manuals/refman/builtins/abolish_protocol1.html +++ b/Logtalk/manuals/refman/builtins/abolish_protocol1.html @@ -1,11 +1,14 @@ - + + - + + + abolish_protocol/1 - + @@ -61,7 +64,7 @@ abolish_protocol(@protocol_identifier) Previous | Next | Table of Contents | Bibliography | Glossary

-Last updated on: October 21, 2001 +Last updated on: July 29, 2002


diff --git a/Logtalk/manuals/refman/builtins/category_property2.html b/Logtalk/manuals/refman/builtins/category_property2.html index 8afbbc643..e858fb1b5 100644 --- a/Logtalk/manuals/refman/builtins/category_property2.html +++ b/Logtalk/manuals/refman/builtins/category_property2.html @@ -1,11 +1,14 @@ - + + - + + + category_property/2 - + @@ -57,7 +60,7 @@ category_property(?category_identifier, ?category_property) Previous | Next | Table of Contents | Bibliography | Glossary

-Last updated on: October 21, 2001 +Last updated on: July 29, 2002


diff --git a/Logtalk/manuals/refman/builtins/create_category4.html b/Logtalk/manuals/refman/builtins/create_category4.html index 45af9fc9e..d293ddcb4 100644 --- a/Logtalk/manuals/refman/builtins/create_category4.html +++ b/Logtalk/manuals/refman/builtins/create_category4.html @@ -1,11 +1,14 @@ - + + - + + + create_category/4 - + @@ -67,7 +70,7 @@ create_category(+category_identifier, +list, +list, +list) Previous | Next | Table of Contents | Bibliography | Glossary

-Last updated on: October 21, 2001 +Last updated on: July 29, 2002


diff --git a/Logtalk/manuals/refman/builtins/create_object4.html b/Logtalk/manuals/refman/builtins/create_object4.html index 120933ced..239ba9230 100644 --- a/Logtalk/manuals/refman/builtins/create_object4.html +++ b/Logtalk/manuals/refman/builtins/create_object4.html @@ -1,11 +1,14 @@ - + + - + + + create_object/4 - + @@ -67,7 +70,7 @@ create_object(+object_identifier, +list, +list, +list) Previous | Next | Table of Contents | Bibliography | Glossary

-Last updated on: October 21, 2001 +Last updated on: July 29, 2002


diff --git a/Logtalk/manuals/refman/builtins/create_protocol3.html b/Logtalk/manuals/refman/builtins/create_protocol3.html index f6b9f0d03..89bdc8b01 100644 --- a/Logtalk/manuals/refman/builtins/create_protocol3.html +++ b/Logtalk/manuals/refman/builtins/create_protocol3.html @@ -1,11 +1,14 @@ - + + - + + + create_protocol/3 - + @@ -65,7 +68,7 @@ create_protocol(+protocol_identifier, +list, +list) Previous | Next | Table of Contents | Bibliography | Glossary

-Last updated on: October 21, 2001 +Last updated on: July 29, 2002


diff --git a/Logtalk/manuals/refman/builtins/current_category1.html b/Logtalk/manuals/refman/builtins/current_category1.html index 714e24b52..e037a8b10 100644 --- a/Logtalk/manuals/refman/builtins/current_category1.html +++ b/Logtalk/manuals/refman/builtins/current_category1.html @@ -1,11 +1,14 @@ - + + - + + + current_category/1 - + @@ -55,7 +58,7 @@ current_category(?category_identifier) Previous | Next | Table of Contents | Bibliography | Glossary

-Last updated on: October 21, 2001 +Last updated on: July 29, 2002


diff --git a/Logtalk/manuals/refman/builtins/current_event5.html b/Logtalk/manuals/refman/builtins/current_event5.html index 5e6c17c45..801f126c7 100644 --- a/Logtalk/manuals/refman/builtins/current_event5.html +++ b/Logtalk/manuals/refman/builtins/current_event5.html @@ -1,11 +1,14 @@ - + + - + + + current_event/5 - + @@ -63,7 +66,7 @@ current_event(?event, ?object_identifier, ?callable, ?object_identifier, ?object Previous | Next | Table of Contents | Bibliography | Glossary

-Last updated on: October 21, 2001 +Last updated on: July 29, 2002


diff --git a/Logtalk/manuals/refman/builtins/current_logtalk_flag2.html b/Logtalk/manuals/refman/builtins/current_logtalk_flag2.html index e918fc780..28708b37d 100644 --- a/Logtalk/manuals/refman/builtins/current_logtalk_flag2.html +++ b/Logtalk/manuals/refman/builtins/current_logtalk_flag2.html @@ -1,11 +1,14 @@ - + + - + + + current_logtalk_flag/2 - + @@ -57,7 +60,7 @@ current_logtalk_flag(?atom, ?atom) Previous | Next | Table of Contents | Bibliography | Glossary

-Last updated on: February 9, 2002 +Last updated on: July 29, 2002


diff --git a/Logtalk/manuals/refman/builtins/current_object1.html b/Logtalk/manuals/refman/builtins/current_object1.html index acf7dd158..cc6debdd8 100644 --- a/Logtalk/manuals/refman/builtins/current_object1.html +++ b/Logtalk/manuals/refman/builtins/current_object1.html @@ -1,11 +1,14 @@ - + + - + + + current_object/1 - + @@ -55,7 +58,7 @@ current_object(?object_identifier) Previous | Next | Table of Contents | Bibliography | Glossary

-Last updated on: October 21, 2001 +Last updated on: July 29, 2002


diff --git a/Logtalk/manuals/refman/builtins/current_protocol1.html b/Logtalk/manuals/refman/builtins/current_protocol1.html index eca056374..e7000c3ca 100644 --- a/Logtalk/manuals/refman/builtins/current_protocol1.html +++ b/Logtalk/manuals/refman/builtins/current_protocol1.html @@ -1,11 +1,14 @@ - + + - + + + current_protocol/1 - + @@ -55,7 +58,7 @@ current_protocol(?protocol_identifier) Previous | Next | Table of Contents | Bibliography | Glossary

-Last updated on: October 21, 2001 +Last updated on: July 29, 2002


diff --git a/Logtalk/manuals/refman/builtins/define_events5.html b/Logtalk/manuals/refman/builtins/define_events5.html index 24489c0d6..c6efbda47 100644 --- a/Logtalk/manuals/refman/builtins/define_events5.html +++ b/Logtalk/manuals/refman/builtins/define_events5.html @@ -1,11 +1,14 @@ - + + - + + + define_events/2 - + @@ -65,7 +68,7 @@ define_events(@event, @object_identifier, @callable, @object_identifier, +object Previous | Next | Table of Contents | Bibliography | Glossary

-Last updated on: October 21, 2001 +Last updated on: July 29, 2002


diff --git a/Logtalk/manuals/refman/builtins/extends_object2_3.html b/Logtalk/manuals/refman/builtins/extends_object2_3.html index 5c5dcf3aa..750f9cccf 100644 --- a/Logtalk/manuals/refman/builtins/extends_object2_3.html +++ b/Logtalk/manuals/refman/builtins/extends_object2_3.html @@ -1,11 +1,14 @@ - + + - + + + extends_object/2-3 - + @@ -65,7 +68,7 @@ extends_object(?object_identifier, ?object_identifier, ?scope) Previous | Next | Table of Contents | Bibliography | Glossary

-Last updated on: October 21, 2001 +Last updated on: July 29, 2002


diff --git a/Logtalk/manuals/refman/builtins/extends_protocol2_3.html b/Logtalk/manuals/refman/builtins/extends_protocol2_3.html index 655de6371..46ce1d937 100644 --- a/Logtalk/manuals/refman/builtins/extends_protocol2_3.html +++ b/Logtalk/manuals/refman/builtins/extends_protocol2_3.html @@ -1,11 +1,14 @@ - + + - + + + extends_protocol/2-3 - + @@ -65,7 +68,7 @@ extends_protocol(?protocol_identifier, ?protocol_identifier, ?scope) Previous | Next | Table of Contents | Bibliography | Glossary

-Last updated on: October 21, 2001 +Last updated on: July 29, 2002


diff --git a/Logtalk/manuals/refman/builtins/forall2.html b/Logtalk/manuals/refman/builtins/forall2.html index 3872e5056..ba76cdd74 100644 --- a/Logtalk/manuals/refman/builtins/forall2.html +++ b/Logtalk/manuals/refman/builtins/forall2.html @@ -1,11 +1,14 @@ - + + - + + + forall/2 - + @@ -57,7 +60,7 @@ forall(+callable, +callable) Previous | Next | Table of Contents | Bibliography | Glossary

-Last updated on: February 9, 2002 +Last updated on: July 29, 2002


diff --git a/Logtalk/manuals/refman/builtins/implements_protocol2_3.html b/Logtalk/manuals/refman/builtins/implements_protocol2_3.html index e2e2ab07f..868eba48d 100644 --- a/Logtalk/manuals/refman/builtins/implements_protocol2_3.html +++ b/Logtalk/manuals/refman/builtins/implements_protocol2_3.html @@ -1,11 +1,14 @@ - + + - + + + implements_protocol/2-3 - + @@ -71,7 +74,7 @@ implements_protocol(?category_identifier, ?protocol_identifier, ?scope) Previous | Next | Table of Contents | Bibliography | Glossary

-Last updated on: October 21, 2001 +Last updated on: July 29, 2002


diff --git a/Logtalk/manuals/refman/builtins/imports_category2_3.html b/Logtalk/manuals/refman/builtins/imports_category2_3.html index d68bdb0a3..0325e106f 100644 --- a/Logtalk/manuals/refman/builtins/imports_category2_3.html +++ b/Logtalk/manuals/refman/builtins/imports_category2_3.html @@ -1,11 +1,14 @@ - + + - + + + imports_category/2-3 - + @@ -65,7 +68,7 @@ imports_category(?object_identifier, ?category_identifier, ?scope) Previous | Next | Table of Contents | Bibliography | Glossary

-Last updated on: October 21, 2001 +Last updated on: July 29, 2002


diff --git a/Logtalk/manuals/refman/builtins/instantiates_class2_3.html b/Logtalk/manuals/refman/builtins/instantiates_class2_3.html index 4a0861196..de738df71 100644 --- a/Logtalk/manuals/refman/builtins/instantiates_class2_3.html +++ b/Logtalk/manuals/refman/builtins/instantiates_class2_3.html @@ -1,11 +1,14 @@ - + + - + + + instantiates_class/2-3 - + @@ -65,7 +68,7 @@ instantiates_class(?object_identifier, ?object_identifier, ?scope) Previous | Next | Table of Contents | Bibliography | Glossary

-Last updated on: October 21, 2001 +Last updated on: July 29, 2002


diff --git a/Logtalk/manuals/refman/builtins/logtalk_compile1.html b/Logtalk/manuals/refman/builtins/logtalk_compile1.html index f49c8aa1a..fba145cf3 100644 --- a/Logtalk/manuals/refman/builtins/logtalk_compile1.html +++ b/Logtalk/manuals/refman/builtins/logtalk_compile1.html @@ -1,11 +1,14 @@ - + + - + + + logtalk_compile/1 - + @@ -66,7 +69,7 @@ logtalk_compile(+atom_list) Previous | Next | Table of Contents | Bibliography | Glossary

-Last updated on: October 22, 2001 +Last updated on: July 29, 2002


diff --git a/Logtalk/manuals/refman/builtins/logtalk_compile2.html b/Logtalk/manuals/refman/builtins/logtalk_compile2.html index 5afdffcde..daa0d8c83 100644 --- a/Logtalk/manuals/refman/builtins/logtalk_compile2.html +++ b/Logtalk/manuals/refman/builtins/logtalk_compile2.html @@ -1,11 +1,14 @@ - + + - + + + logtalk_compile/2 - + @@ -75,7 +78,7 @@ logtalk_compile(+atom_list, +list) Previous | Next | Table of Contents | Bibliography | Glossary

-Last updated on: October 22, 2001 +Last updated on: July 29, 2002


diff --git a/Logtalk/manuals/refman/builtins/logtalk_load1.html b/Logtalk/manuals/refman/builtins/logtalk_load1.html index 8334c2731..532cdc715 100644 --- a/Logtalk/manuals/refman/builtins/logtalk_load1.html +++ b/Logtalk/manuals/refman/builtins/logtalk_load1.html @@ -1,11 +1,14 @@ - + + - + + + logtalk_load/1 - + @@ -66,7 +69,7 @@ logtalk_load(+atom_list) Previous | Next | Table of Contents | Bibliography | Glossary

-Last updated on: October 22, 2001 +Last updated on: July 29, 2002


diff --git a/Logtalk/manuals/refman/builtins/logtalk_load2.html b/Logtalk/manuals/refman/builtins/logtalk_load2.html index 23c176689..ac3f8f648 100644 --- a/Logtalk/manuals/refman/builtins/logtalk_load2.html +++ b/Logtalk/manuals/refman/builtins/logtalk_load2.html @@ -1,11 +1,14 @@ - + + - + + + logtalk_load/2 - + @@ -75,7 +78,7 @@ logtalk_load(+atom_list, +list) Previous | Next | Table of Contents | Bibliography | Glossary

-Last updated on: February 9, 2002 +Last updated on: July 29, 2002


diff --git a/Logtalk/manuals/refman/builtins/logtalk_version3.html b/Logtalk/manuals/refman/builtins/logtalk_version3.html index d08453bc4..352395afe 100644 --- a/Logtalk/manuals/refman/builtins/logtalk_version3.html +++ b/Logtalk/manuals/refman/builtins/logtalk_version3.html @@ -1,11 +1,14 @@ - + + - + + + logtalk_version/3 - + @@ -59,7 +62,7 @@ logtalk_version(?integer, ?integer, ?integer) Previous | Next | Table of Contents | Bibliography | Glossary

-Last updated on: May 6, 2002 +Last updated on: July 29, 2002


diff --git a/Logtalk/manuals/refman/builtins/object_property2.html b/Logtalk/manuals/refman/builtins/object_property2.html index 9ddccb09b..c132a936a 100644 --- a/Logtalk/manuals/refman/builtins/object_property2.html +++ b/Logtalk/manuals/refman/builtins/object_property2.html @@ -1,11 +1,14 @@ - + + - + + + object_property/2 - + @@ -57,7 +60,7 @@ object_property(?object_identifier, ?object_property) Previous | Next | Table of Contents | Bibliography | Glossary

-Last updated on: October 21, 2001 +Last updated on: July 29, 2002


diff --git a/Logtalk/manuals/refman/builtins/protocol_property2.html b/Logtalk/manuals/refman/builtins/protocol_property2.html index cf8623d47..da16431e9 100644 --- a/Logtalk/manuals/refman/builtins/protocol_property2.html +++ b/Logtalk/manuals/refman/builtins/protocol_property2.html @@ -1,11 +1,14 @@ - + + - + + + protocol_property/2 - + @@ -57,7 +60,7 @@ protocol_property(?protocol_identifier, ?protocol_property) Previous | Next | Table of Contents | Bibliography | Glossary

-Last updated on: October 21, 2001 +Last updated on: July 29, 2002


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

-Last updated on: February 9, 2002 +Last updated on: July 29, 2002


diff --git a/Logtalk/manuals/refman/builtins/set_logtalk_flag2.html b/Logtalk/manuals/refman/builtins/set_logtalk_flag2.html index 6531e2cd3..bf6a5c947 100644 --- a/Logtalk/manuals/refman/builtins/set_logtalk_flag2.html +++ b/Logtalk/manuals/refman/builtins/set_logtalk_flag2.html @@ -1,11 +1,14 @@ - + + - + + + set_logtalk_flag/2 - + @@ -65,7 +68,7 @@ set_logtalk_flag(+atom, +atom) Previous | Next | Table of Contents | Bibliography | Glossary

-Last updated on: May 14, 2002 +Last updated on: July 29, 2002


diff --git a/Logtalk/manuals/refman/builtins/specializes_class2_3.html b/Logtalk/manuals/refman/builtins/specializes_class2_3.html index 7f8de5a75..137c1c2ee 100644 --- a/Logtalk/manuals/refman/builtins/specializes_class2_3.html +++ b/Logtalk/manuals/refman/builtins/specializes_class2_3.html @@ -1,11 +1,14 @@ - + + - + + + specializes_class/2-3 - + @@ -65,7 +68,7 @@ specializes_class(?object_identifier, ?object_identifier, ?scope) Previous | Next | Table of Contents | Bibliography | Glossary

-Last updated on: October 21, 2001 +Last updated on: July 29, 2002


diff --git a/Logtalk/manuals/refman/control/external1.html b/Logtalk/manuals/refman/control/external1.html index 77504a4da..9f7652282 100644 --- a/Logtalk/manuals/refman/control/external1.html +++ b/Logtalk/manuals/refman/control/external1.html @@ -1,11 +1,14 @@ - + + - + + + {}/1 - + @@ -52,10 +55,10 @@ N1/D1 < N2/D2 :-

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

-Last updated on: May 6, 2002 +Last updated on: July 29, 2002


diff --git a/Logtalk/manuals/refman/control/to_object2.html b/Logtalk/manuals/refman/control/to_object2.html index 9ea602b84..68fe4329b 100644 --- a/Logtalk/manuals/refman/control/to_object2.html +++ b/Logtalk/manuals/refman/control/to_object2.html @@ -1,11 +1,14 @@ - + + - + + + ::/2 - + @@ -72,7 +75,7 @@ Sends a message to an object. The message argument must match a public predicate Previous | Next | Table of Contents | Bibliography | Glossary

-Last updated on: October 21, 2001 +Last updated on: July 29, 2002


diff --git a/Logtalk/manuals/refman/control/to_self1.html b/Logtalk/manuals/refman/control/to_self1.html index 512f299c3..5917736b1 100644 --- a/Logtalk/manuals/refman/control/to_self1.html +++ b/Logtalk/manuals/refman/control/to_self1.html @@ -1,11 +1,14 @@ - + + - + + + ::/1 - + @@ -66,7 +69,7 @@ area(Area) :- Previous | Next | Table of Contents | Bibliography | Glossary

-Last updated on: October 21, 2001 +Last updated on: July 29, 2002


diff --git a/Logtalk/manuals/refman/control/to_super1.html b/Logtalk/manuals/refman/control/to_super1.html index 93876fe65..ac0eca44d 100644 --- a/Logtalk/manuals/refman/control/to_super1.html +++ b/Logtalk/manuals/refman/control/to_super1.html @@ -1,11 +1,14 @@ - + + - + + + ^^/1 - + @@ -63,7 +66,7 @@ init :- Previous | Next | Table of Contents | Bibliography | Glossary

-Last updated on: October 21, 2001 +Last updated on: July 29, 2002


diff --git a/Logtalk/manuals/refman/directives/calls1.html b/Logtalk/manuals/refman/directives/calls1.html index 9c629abe8..e501b29b6 100644 --- a/Logtalk/manuals/refman/directives/calls1.html +++ b/Logtalk/manuals/refman/directives/calls1.html @@ -1,11 +1,14 @@ - + + - + + + calls/1 - + @@ -49,7 +52,7 @@ calls(+protocol_identifiers) Previous | Next | Table of Contents | Bibliography | Glossary

-Last updated on: October 21, 2001 +Last updated on: July 29, 2002


diff --git a/Logtalk/manuals/refman/directives/category1_2.html b/Logtalk/manuals/refman/directives/category1_2.html index 5d2b06f14..04cfb8d91 100644 --- a/Logtalk/manuals/refman/directives/category1_2.html +++ b/Logtalk/manuals/refman/directives/category1_2.html @@ -1,11 +1,14 @@ - + + - + + + category/1-2 - + @@ -59,7 +62,7 @@ category(+category_identifier, Previous | Next | Table of Contents | Bibliography | Glossary

-Last updated on: October 21, 2001 +Last updated on: July 29, 2002


diff --git a/Logtalk/manuals/refman/directives/discontiguous1.html b/Logtalk/manuals/refman/directives/discontiguous1.html index c7cd57440..f1c343947 100644 --- a/Logtalk/manuals/refman/directives/discontiguous1.html +++ b/Logtalk/manuals/refman/directives/discontiguous1.html @@ -1,11 +1,14 @@ - + + - + + + discontiguous/1 - + @@ -53,7 +56,7 @@ discontiguous(+predicate_indicator_term) Previous | Next | Table of Contents | Bibliography | Glossary

-Last updated on: October 21, 2001 +Last updated on: July 29, 2002


diff --git a/Logtalk/manuals/refman/directives/dynamic0.html b/Logtalk/manuals/refman/directives/dynamic0.html index a341cc977..db049f92b 100644 --- a/Logtalk/manuals/refman/directives/dynamic0.html +++ b/Logtalk/manuals/refman/directives/dynamic0.html @@ -1,11 +1,14 @@ - + + - + + + dynamic/0 - + @@ -47,7 +50,7 @@ dynamic Previous | Next | Table of Contents | Bibliography | Glossary

-Last updated on: October 21, 2001 +Last updated on: July 29, 2002


diff --git a/Logtalk/manuals/refman/directives/dynamic1.html b/Logtalk/manuals/refman/directives/dynamic1.html index 47bcb7d0e..96ac9c045 100644 --- a/Logtalk/manuals/refman/directives/dynamic1.html +++ b/Logtalk/manuals/refman/directives/dynamic1.html @@ -1,11 +1,14 @@ - + + - + + + dynamic/1 - + @@ -53,7 +56,7 @@ dynamic(+predicate_indicator_term) Previous | Next | Table of Contents | Bibliography | Glossary

-Last updated on: October 21, 2001 +Last updated on: July 29, 2002


diff --git a/Logtalk/manuals/refman/directives/end_category0.html b/Logtalk/manuals/refman/directives/end_category0.html index a58d15033..1349e6718 100644 --- a/Logtalk/manuals/refman/directives/end_category0.html +++ b/Logtalk/manuals/refman/directives/end_category0.html @@ -1,11 +1,14 @@ - + + - + + + end_category/0 - + @@ -47,7 +50,7 @@ end_category Previous | Next | Table of Contents | Bibliography | Glossary

-Last updated on: October 21, 2001 +Last updated on: July 29, 2002


diff --git a/Logtalk/manuals/refman/directives/end_object0.html b/Logtalk/manuals/refman/directives/end_object0.html index f938bb256..46dfe9169 100644 --- a/Logtalk/manuals/refman/directives/end_object0.html +++ b/Logtalk/manuals/refman/directives/end_object0.html @@ -1,11 +1,14 @@ - + + - + + + end_object/0 - + @@ -47,7 +50,7 @@ end_object Previous | Next | Table of Contents | Bibliography | Glossary

-Last updated on: October 21, 2001 +Last updated on: July 29, 2002


diff --git a/Logtalk/manuals/refman/directives/end_protocol0.html b/Logtalk/manuals/refman/directives/end_protocol0.html index 61bb76eff..e53faa626 100644 --- a/Logtalk/manuals/refman/directives/end_protocol0.html +++ b/Logtalk/manuals/refman/directives/end_protocol0.html @@ -1,11 +1,14 @@ - + + - + + + end_protocol/0 - + @@ -47,7 +50,7 @@ end_protocol Previous | Next | Table of Contents | Bibliography | Glossary

-Last updated on: October 21, 2001 +Last updated on: July 29, 2002


diff --git a/Logtalk/manuals/refman/directives/info1.html b/Logtalk/manuals/refman/directives/info1.html index 87a198d31..fc064c4bd 100644 --- a/Logtalk/manuals/refman/directives/info1.html +++ b/Logtalk/manuals/refman/directives/info1.html @@ -1,11 +1,14 @@ - + + - + + + info/1 - + @@ -51,7 +54,7 @@ info(+info_list) Previous | Next | Table of Contents | Bibliography | Glossary

-Last updated on: October 21, 2001 +Last updated on: July 29, 2002


diff --git a/Logtalk/manuals/refman/directives/info2.html b/Logtalk/manuals/refman/directives/info2.html index dd9a05d66..55743491d 100644 --- a/Logtalk/manuals/refman/directives/info2.html +++ b/Logtalk/manuals/refman/directives/info2.html @@ -1,11 +1,14 @@ - + + - + + + info/2 - + @@ -49,7 +52,7 @@ info(+predicate_indicator, +info_list) Previous | Next | Table of Contents | Bibliography | Glossary

-Last updated on: October 21, 2001 +Last updated on: July 29, 2002


diff --git a/Logtalk/manuals/refman/directives/initialization1.html b/Logtalk/manuals/refman/directives/initialization1.html index 9cba7100b..6c7680502 100644 --- a/Logtalk/manuals/refman/directives/initialization1.html +++ b/Logtalk/manuals/refman/directives/initialization1.html @@ -1,11 +1,14 @@ - + + - + + + initialization/1 - + @@ -47,7 +50,7 @@ initialization(@goal) Previous | Next | Table of Contents | Bibliography | Glossary

-Last updated on: October 21, 2001 +Last updated on: July 29, 2002


diff --git a/Logtalk/manuals/refman/directives/metapredicate1.html b/Logtalk/manuals/refman/directives/metapredicate1.html index 2b2895d6a..9c5f4facf 100644 --- a/Logtalk/manuals/refman/directives/metapredicate1.html +++ b/Logtalk/manuals/refman/directives/metapredicate1.html @@ -1,11 +1,14 @@ - + + - + + + metapredicate/1 - + @@ -49,7 +52,7 @@ metapredicate(+metapredicate_predicate_term) Previous | Next | Table of Contents | Bibliography | Glossary

-Last updated on: October 21, 2001 +Last updated on: July 29, 2002


diff --git a/Logtalk/manuals/refman/directives/mode2.html b/Logtalk/manuals/refman/directives/mode2.html index 458989105..be4edca23 100644 --- a/Logtalk/manuals/refman/directives/mode2.html +++ b/Logtalk/manuals/refman/directives/mode2.html @@ -1,11 +1,14 @@ - + + - + + + mode/2 - + @@ -53,7 +56,7 @@ mode(+predicate_mode_term, +number_of_solutions) Previous | Next | Table of Contents | Bibliography | Glossary

-Last updated on: October 21, 2001 +Last updated on: July 29, 2002


diff --git a/Logtalk/manuals/refman/directives/object1_4.html b/Logtalk/manuals/refman/directives/object1_4.html index 657d4dbaa..b1c8a3ea5 100644 --- a/Logtalk/manuals/refman/directives/object1_4.html +++ b/Logtalk/manuals/refman/directives/object1_4.html @@ -1,11 +1,14 @@ - + + - + + + object/1-4 - + @@ -263,7 +266,7 @@ object(+object_identifier, Previous | Next | Table of Contents | Bibliography | Glossary

-Last updated on: October 21, 2001 +Last updated on: July 29, 2002


diff --git a/Logtalk/manuals/refman/directives/op3.html b/Logtalk/manuals/refman/directives/op3.html index 3bf5187ae..56ca38065 100644 --- a/Logtalk/manuals/refman/directives/op3.html +++ b/Logtalk/manuals/refman/directives/op3.html @@ -1,10 +1,14 @@ - - + + + + + + op/3 - + @@ -49,7 +53,7 @@ op(+integer, +associativity, +atom) Previous | Next | Table of Contents | Bibliography | Glossary

-Last updated on: October 21, 2001 +Last updated on: July 29, 2002


diff --git a/Logtalk/manuals/refman/directives/private1.html b/Logtalk/manuals/refman/directives/private1.html index 237043407..1ba021c46 100644 --- a/Logtalk/manuals/refman/directives/private1.html +++ b/Logtalk/manuals/refman/directives/private1.html @@ -1,11 +1,14 @@ - + + - + + + private/1 - + @@ -52,7 +55,7 @@ private(+predicate_indicator_term) Previous | Next | Table of Contents | Bibliography | Glossary

-Last updated on: October 21, 2001 +Last updated on: July 29, 2002


diff --git a/Logtalk/manuals/refman/directives/protected1.html b/Logtalk/manuals/refman/directives/protected1.html index 8039ef8b6..f8790bc91 100644 --- a/Logtalk/manuals/refman/directives/protected1.html +++ b/Logtalk/manuals/refman/directives/protected1.html @@ -1,11 +1,14 @@ - + + - + + + protected/1 - + @@ -53,7 +56,7 @@ protected(+predicate_indicator_term) Previous | Next | Table of Contents | Bibliography | Glossary

-Last updated on: October 21, 2001 +Last updated on: July 29, 2002


diff --git a/Logtalk/manuals/refman/directives/protocol1_2.html b/Logtalk/manuals/refman/directives/protocol1_2.html index f4e392440..4a06549be 100644 --- a/Logtalk/manuals/refman/directives/protocol1_2.html +++ b/Logtalk/manuals/refman/directives/protocol1_2.html @@ -1,11 +1,14 @@ - + + - + + + protocol/1-2 - + @@ -59,7 +62,7 @@ protocol(+protocol_identifier, Previous | Next | Table of Contents | Bibliography | Glossary

-Last updated on: October 21, 2001 +Last updated on: July 29, 2002


diff --git a/Logtalk/manuals/refman/directives/public1.html b/Logtalk/manuals/refman/directives/public1.html index b72a264ce..fcd0a309d 100644 --- a/Logtalk/manuals/refman/directives/public1.html +++ b/Logtalk/manuals/refman/directives/public1.html @@ -1,11 +1,14 @@ - + + - + + + public/1 - + @@ -53,7 +56,7 @@ public(+predicate_indicator_term) Previous | Next | Table of Contents | Bibliography | Glossary

-Last updated on: October 21, 2001 +Last updated on: July 29, 2002


diff --git a/Logtalk/manuals/refman/directives/uses1.html b/Logtalk/manuals/refman/directives/uses1.html index ed5f81acd..0dd46bf21 100644 --- a/Logtalk/manuals/refman/directives/uses1.html +++ b/Logtalk/manuals/refman/directives/uses1.html @@ -1,11 +1,14 @@ - + + - + + + uses/1 - + @@ -49,7 +52,7 @@ uses(+object_identifiers) Previous | Next | Table of Contents | Bibliography | Glossary

-Last updated on: October 21, 2001 +Last updated on: July 29, 2002


diff --git a/Logtalk/manuals/refman/grammar.html b/Logtalk/manuals/refman/grammar.html index f4d27bbea..0122c3b93 100644 --- a/Logtalk/manuals/refman/grammar.html +++ b/Logtalk/manuals/refman/grammar.html @@ -1,11 +1,14 @@ - + + - + + + Logtalk Grammar - + @@ -753,7 +756,7 @@ The Logtalk grammar is here described using Backus-Naur Form syntax. Non-termina Previous | Next | Table of Contents | Bibliography | Glossary

-Last updated on: November 26, 2001 +Last updated on: July 29, 2002


diff --git a/Logtalk/manuals/refman/index.html b/Logtalk/manuals/refman/index.html index 2e68f2340..30eebb421 100644 --- a/Logtalk/manuals/refman/index.html +++ b/Logtalk/manuals/refman/index.html @@ -1,11 +1,14 @@ - + + - + + + Logtalk Reference Manual - + @@ -188,7 +191,7 @@ User manual | Tutorial | Bibliography | Glossary

-Last updated on: May 14, 2002 +Last updated on: July 29, 2002


diff --git a/Logtalk/manuals/refman/methods/abolish1.html b/Logtalk/manuals/refman/methods/abolish1.html index 31b951cfa..c28832587 100644 --- a/Logtalk/manuals/refman/methods/abolish1.html +++ b/Logtalk/manuals/refman/methods/abolish1.html @@ -1,11 +1,14 @@ - + + - + + + abolish/1 - + @@ -77,7 +80,7 @@ abolish(+predicate_indicator) Previous | Next | Table of Contents | Bibliography | Glossary

-Last updated on: March 31, 2002 +Last updated on: July 29, 2002


diff --git a/Logtalk/manuals/refman/methods/after3.html b/Logtalk/manuals/refman/methods/after3.html index 75e50e63e..011654817 100644 --- a/Logtalk/manuals/refman/methods/after3.html +++ b/Logtalk/manuals/refman/methods/after3.html @@ -1,11 +1,14 @@ - + + - + + + after/3 - + @@ -56,7 +59,7 @@ after(Object, Message, Sender) :- Previous | Next | Table of Contents | Bibliography | Glossary

-Last updated on: October 21, 2001 +Last updated on: July 29, 2002


diff --git a/Logtalk/manuals/refman/methods/asserta1.html b/Logtalk/manuals/refman/methods/asserta1.html index 91a6904c2..c5edcb91a 100644 --- a/Logtalk/manuals/refman/methods/asserta1.html +++ b/Logtalk/manuals/refman/methods/asserta1.html @@ -1,11 +1,14 @@ - + + - + + + asserta/1 - + @@ -73,7 +76,7 @@ asserta(+clause) Previous | Next | Table of Contents | Bibliography | Glossary

-Last updated on: October 21, 2001 +Last updated on: July 29, 2002


diff --git a/Logtalk/manuals/refman/methods/assertz1.html b/Logtalk/manuals/refman/methods/assertz1.html index 6374e7d99..f28004fa1 100644 --- a/Logtalk/manuals/refman/methods/assertz1.html +++ b/Logtalk/manuals/refman/methods/assertz1.html @@ -1,11 +1,14 @@ - + + - + + + assertz/1 - + @@ -73,7 +76,7 @@ assertz(+clause) Previous | Next | Table of Contents | Bibliography | Glossary

-Last updated on: October 21, 2001 +Last updated on: July 29, 2002


diff --git a/Logtalk/manuals/refman/methods/bagof3.html b/Logtalk/manuals/refman/methods/bagof3.html index 939e81bbc..4ef5785c5 100644 --- a/Logtalk/manuals/refman/methods/bagof3.html +++ b/Logtalk/manuals/refman/methods/bagof3.html @@ -1,11 +1,14 @@ - + + - + + + bagof/3 - + @@ -59,7 +62,7 @@ bagof(@term, +callable, -list) Previous | Next | Table of Contents | Bibliography | Glossary

-Last updated on: October 21, 2001 +Last updated on: July 29, 2002


diff --git a/Logtalk/manuals/refman/methods/before3.html b/Logtalk/manuals/refman/methods/before3.html index 7343577f3..405573569 100644 --- a/Logtalk/manuals/refman/methods/before3.html +++ b/Logtalk/manuals/refman/methods/before3.html @@ -1,11 +1,14 @@ - + + - + + + before/3 - + @@ -56,7 +59,7 @@ before(Object, Message, Sender) :- Previous | Next | Table of Contents | Bibliography | Glossary

-Last updated on: October 21, 2001 +Last updated on: July 29, 2002


diff --git a/Logtalk/manuals/refman/methods/clause2.html b/Logtalk/manuals/refman/methods/clause2.html index a42ef4515..e8e8c7397 100644 --- a/Logtalk/manuals/refman/methods/clause2.html +++ b/Logtalk/manuals/refman/methods/clause2.html @@ -1,11 +1,14 @@ - + + - + + + clause/2 - + @@ -72,7 +75,7 @@ clause(+callable, ?body) Previous | Next | Table of Contents | Bibliography | Glossary

-Last updated on: April 2, 2002 +Last updated on: July 29, 2002


diff --git a/Logtalk/manuals/refman/methods/current_predicate1.html b/Logtalk/manuals/refman/methods/current_predicate1.html index e2c4cb0d6..2f24313fb 100644 --- a/Logtalk/manuals/refman/methods/current_predicate1.html +++ b/Logtalk/manuals/refman/methods/current_predicate1.html @@ -1,11 +1,14 @@ - + + - + + + current_predicate/1 - + @@ -60,7 +63,7 @@ current_predicate(?predicate_indicator) Previous | Next | Table of Contents | Bibliography | Glossary

-Last updated on: October 21, 2001 +Last updated on: July 29, 2002


diff --git a/Logtalk/manuals/refman/methods/findall3.html b/Logtalk/manuals/refman/methods/findall3.html index 513f3fb83..888d39017 100644 --- a/Logtalk/manuals/refman/methods/findall3.html +++ b/Logtalk/manuals/refman/methods/findall3.html @@ -1,11 +1,14 @@ - + + - + + + findall/3 - + @@ -59,7 +62,7 @@ findall(@term, +callable, -list) Previous | Next | Table of Contents | Bibliography | Glossary

-Last updated on: October 21, 2001 +Last updated on: July 29, 2002


diff --git a/Logtalk/manuals/refman/methods/forall2.html b/Logtalk/manuals/refman/methods/forall2.html index d0b8dc5a2..92d176825 100644 --- a/Logtalk/manuals/refman/methods/forall2.html +++ b/Logtalk/manuals/refman/methods/forall2.html @@ -1,11 +1,14 @@ - + + - + + + forall/2 - + @@ -65,7 +68,7 @@ forall(+callable, +callable) Previous | Next | Table of Contents | Bibliography | Glossary

-Last updated on: October 21, 2001 +Last updated on: July 29, 2002


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

-Last updated on: February 9, 2002 +Last updated on: July 29, 2002


diff --git a/Logtalk/manuals/refman/methods/predicate_property2.html b/Logtalk/manuals/refman/methods/predicate_property2.html index 9f7540520..f3b69ef15 100644 --- a/Logtalk/manuals/refman/methods/predicate_property2.html +++ b/Logtalk/manuals/refman/methods/predicate_property2.html @@ -1,11 +1,14 @@ - + + - + + + predicate_property/2 - + @@ -64,7 +67,7 @@ predicate_property(+callable, ?predicate_property) Previous | Next | Table of Contents | Bibliography | Glossary

-Last updated on: October 21, 2001 +Last updated on: July 29, 2002


diff --git a/Logtalk/manuals/refman/methods/retract1.html b/Logtalk/manuals/refman/methods/retract1.html index dc6186259..e66e3e468 100644 --- a/Logtalk/manuals/refman/methods/retract1.html +++ b/Logtalk/manuals/refman/methods/retract1.html @@ -1,11 +1,14 @@ - + + - + + + retract/1 - + @@ -71,7 +74,7 @@ retract(+clause) Previous | Next | Table of Contents | Bibliography | Glossary

-Last updated on: April 2, 2002 +Last updated on: July 29, 2002


diff --git a/Logtalk/manuals/refman/methods/retractall1.html b/Logtalk/manuals/refman/methods/retractall1.html index c17fcd209..3fb1f8ca1 100644 --- a/Logtalk/manuals/refman/methods/retractall1.html +++ b/Logtalk/manuals/refman/methods/retractall1.html @@ -1,11 +1,14 @@ - + + - + + + retractall/1 - + @@ -70,7 +73,7 @@ retractall(+callable) Previous | Next | Table of Contents | Bibliography | Glossary

-Last updated on: April 2, 2002 +Last updated on: July 29, 2002


diff --git a/Logtalk/manuals/refman/methods/self1.html b/Logtalk/manuals/refman/methods/self1.html index 1a0f53138..7428bebce 100644 --- a/Logtalk/manuals/refman/methods/self1.html +++ b/Logtalk/manuals/refman/methods/self1.html @@ -1,11 +1,14 @@ - + + - + + + self/1 - + @@ -57,7 +60,7 @@ test :- Previous | Next | Table of Contents | Bibliography | Glossary

-Last updated on: October 21, 2001 +Last updated on: July 29, 2002


diff --git a/Logtalk/manuals/refman/methods/sender1.html b/Logtalk/manuals/refman/methods/sender1.html index 11f13cd42..d9836a138 100644 --- a/Logtalk/manuals/refman/methods/sender1.html +++ b/Logtalk/manuals/refman/methods/sender1.html @@ -1,11 +1,14 @@ - + + - + + + sender/1 - + @@ -57,7 +60,7 @@ test :- Previous | Next | Table of Contents | Bibliography | Glossary

-Last updated on: October 21, 2001 +Last updated on: July 29, 2002


diff --git a/Logtalk/manuals/refman/methods/setof3.html b/Logtalk/manuals/refman/methods/setof3.html index 6e3fd6b00..3a16bba2b 100644 --- a/Logtalk/manuals/refman/methods/setof3.html +++ b/Logtalk/manuals/refman/methods/setof3.html @@ -1,11 +1,14 @@ - + + - + + + setof/3 - + @@ -59,7 +62,7 @@ setof(@term, +callable, -list) Previous | Next | Table of Contents | Bibliography | Glossary

-Last updated on: October 21, 2001 +Last updated on: July 29, 2002


diff --git a/Logtalk/manuals/refman/methods/this1.html b/Logtalk/manuals/refman/methods/this1.html index db58874cf..4610f21a2 100644 --- a/Logtalk/manuals/refman/methods/this1.html +++ b/Logtalk/manuals/refman/methods/this1.html @@ -1,11 +1,14 @@ - + + - + + + this/1 - + @@ -57,7 +60,7 @@ test :- Previous | Next | Table of Contents | Bibliography | Glossary

-Last updated on: October 21, 2001 +Last updated on: July 29, 2002


diff --git a/Logtalk/manuals/tutorial/attributes.html b/Logtalk/manuals/tutorial/attributes.html index 0db0f1366..4efb582df 100644 --- a/Logtalk/manuals/tutorial/attributes.html +++ b/Logtalk/manuals/tutorial/attributes.html @@ -1,11 +1,14 @@ - + + - + + + Dynamic object attributes - + @@ -146,7 +149,7 @@ After compiling and loading this object and our category, we can now try queries Previous | Next | Table of Contents | Bibliography | Glossary

-Last updated on: March 12, 2001 +Last updated on: July 29, 2002


diff --git a/Logtalk/manuals/tutorial/index.html b/Logtalk/manuals/tutorial/index.html index 3151435ab..f3279763c 100644 --- a/Logtalk/manuals/tutorial/index.html +++ b/Logtalk/manuals/tutorial/index.html @@ -1,11 +1,14 @@ - + + - + + + Logtalk Tutorial - + @@ -48,7 +51,7 @@ User manual | Reference manual | Bibliography | Glossary

-Last updated on: April 21, 2002 +Last updated on: July 29, 2002


diff --git a/Logtalk/manuals/tutorial/lists.html b/Logtalk/manuals/tutorial/lists.html index 722ad8aad..10096dbb9 100644 --- a/Logtalk/manuals/tutorial/lists.html +++ b/Logtalk/manuals/tutorial/lists.html @@ -1,11 +1,14 @@ - + + - + + + List predicates - + @@ -68,7 +71,7 @@ We will start by defining an object, list, containing predicate def What is different here from a regular Prolog program? The definitions of the list predicates are the usual ones. We have two new directives, object/1 and end_object/0, that encapsulate the object's code. In Logtalk, by default, all object predicates are private; therefore, we have to explicitly declare all predicates that we want to be public, that is, that we want to call from outside the object. This is done using the public/1 scope directive.

-After we copy the object code to a text file and saved it under the name list.lgt, we need to change the Prolog working directory to the one used to save our file (consult your Prolog compiler reference manual). Then, after starting Logtalk (see the Installing and running Logtalk session on the User Manual), we can compile and load the object using the logtalk_load/1 Logtalk built-in predicate: +After we copy the object code to a text file and saved it under the name list.lgt, we need to change the Prolog working directory to the one used to save our file (consult your Prolog compiler reference manual). Then, after starting Logtalk (see the Installing and running Logtalk session on the User Manual), we can compile and load the object using the logtalk_load/1 Logtalk built-in predicate:

     | ?- logtalk_load([list]).
@@ -197,7 +200,7 @@ The protocol declared in listp may now be alternatively implemented
 Previous | Next | Table of Contents | Bibliography | Glossary
 

-Last updated on: October 1, 2000 +Last updated on: July 29, 2002


diff --git a/Logtalk/manuals/tutorial/profiling.html b/Logtalk/manuals/tutorial/profiling.html index 079f2a93c..25adfa2dc 100644 --- a/Logtalk/manuals/tutorial/profiling.html +++ b/Logtalk/manuals/tutorial/profiling.html @@ -1,11 +1,14 @@ - + + - + + + Profiling programs - + @@ -154,7 +157,7 @@ This call will abolish all events defined over the object foo assig Previous | Next | Table of Contents | Bibliography | Glossary

-Last updated on: July 4, 2000 +Last updated on: July 29, 2002


diff --git a/Logtalk/manuals/tutorial/reflection.html b/Logtalk/manuals/tutorial/reflection.html index 691417455..f46b872ee 100644 --- a/Logtalk/manuals/tutorial/reflection.html +++ b/Logtalk/manuals/tutorial/reflection.html @@ -1,11 +1,14 @@ - + + - + + + A reflective class-based system - + @@ -80,7 +83,7 @@ Note that all three objects are instances of class class. The insta Previous | Next | Table of Contents | Bibliography | Glossary

-Last updated on: July 4, 2000 +Last updated on: July 29, 2002


diff --git a/Logtalk/manuals/userman/categories.html b/Logtalk/manuals/userman/categories.html index c16f425b9..ac269fb9b 100644 --- a/Logtalk/manuals/userman/categories.html +++ b/Logtalk/manuals/userman/categories.html @@ -1,11 +1,14 @@ - + + - + + + Categories - + @@ -277,7 +280,7 @@ Omitting the scope keyword is equivalent to writing: Previous | Next | Table of Contents | Bibliography | Glossary

-Last updated on: May 6, 2002 +Last updated on: July 29, 2002


diff --git a/Logtalk/manuals/userman/configuration.html b/Logtalk/manuals/userman/configuration.html index f6767cd69..668889104 100644 --- a/Logtalk/manuals/userman/configuration.html +++ b/Logtalk/manuals/userman/configuration.html @@ -1,11 +1,14 @@ - + + - + + + Logtalk configuration - + @@ -69,7 +72,7 @@ If you are unsure that your Prolog compiler provides all the ISO predicates need Previous | Next | Table of Contents | Bibliography | Glossary

-Last updated on: June 15, 2002 +Last updated on: July 29, 2002


diff --git a/Logtalk/manuals/userman/documenting.html b/Logtalk/manuals/userman/documenting.html index bdfe093a2..dd1841311 100644 --- a/Logtalk/manuals/userman/documenting.html +++ b/Logtalk/manuals/userman/documenting.html @@ -1,11 +1,14 @@ - + + - + + + Documenting Logtalk programs - + @@ -120,7 +123,7 @@ The XML documenting files are (by default) automatically generated when you comp Each XML file contains references to two other files: logtalk.dtd, a DTD file describing the XML file structure, and a XSL style sheet file responsible for converting the XML files to some desired format like HTML. The name of the XSL file can be changed in the configuration files via the lgt_file_name/2 predicate. The default value is lgtxml.xsl, a XSL file that enables Logtalk XML files to be viewed directly in a web browser. The HTML output refers a CSS file, logtalk.css, that specifies how the HTML code will be rendered. The three default files are contained in the xml sub-directory in the Logtalk installation directory. This directory may also contain other files for specific XSLT processors or for converting XML to other formats besides HTML. Please read the NOTES file included in the directory for details.

-There is a set of compilers options, used with the Logtalk logtalk_load/2 or the logtalk_compile/2 built-in predicates, that can be used to control the generation of the XML documentation files. Please see the Installing and running Logtalk section of this manual for details. +There is a set of compilers options, used with the Logtalk logtalk_load/2 or the logtalk_compile/2 built-in predicates, that can be used to control the generation of the XML documentation files. Please see the Installing and running Logtalk section of this manual for details.

By default, all file references use relative paths, assuming that the .xml documentation files and the .dtd, .xsl, and .css files reside in the same directory. This can acomplished either by copying the DTD and style files to the your application compiling directory or by using file aliases or symbolic links, depending on the operating system that you are using. Of course, you may also copy the *.xml files to the xml sub-directory. @@ -134,7 +137,7 @@ To view the XML documenting files you can open them in a web browser that suppor Previous | Next | Table of Contents | Bibliography | Glossary

-Last updated on: October 6, 2001 +Last updated on: July 29, 2002


diff --git a/Logtalk/manuals/userman/errors.html b/Logtalk/manuals/userman/errors.html index 2d8a78546..0cdc29b61 100644 --- a/Logtalk/manuals/userman/errors.html +++ b/Logtalk/manuals/userman/errors.html @@ -1,11 +1,14 @@ - + + - + + + Error handling - + @@ -48,7 +51,7 @@ For example: The Logtalk preprocessor/compiler uses the read_term/3 ISO Prolog defined built-in predicate to read and process a Logtalk source file. One consequence of this is that invalid Prolog terms or syntax errors may abort the compilation process with limited information given to the user (due to the inherent limitations of the read_term/3 predicate).

-If all the (Prolog) terms in a source file are valid, then there is a set of errors or potential errors, described below, that the preprocessor will try to detect and report, depending on the used compiler options (see the Installing and running Logtalk section of this manual for details). +If all the (Prolog) terms in a source file are valid, then there is a set of errors or potential errors, described below, that the preprocessor will try to detect and report, depending on the used compiler options (see the Installing and running Logtalk section of this manual for details).

Unknown entities

@@ -129,7 +132,7 @@ The message sending mechanisms always check if the receiver of a message is a de Previous | Next | Table of Contents | Bibliography | Glossary

-Last updated on: May 6, 2002 +Last updated on: July 29, 2002


diff --git a/Logtalk/manuals/userman/events.html b/Logtalk/manuals/userman/events.html index ea778356e..8fb453add 100644 --- a/Logtalk/manuals/userman/events.html +++ b/Logtalk/manuals/userman/events.html @@ -1,11 +1,14 @@ - + + - + + + Event-driven programming - + @@ -283,7 +286,7 @@ To stop tracing, we can use the abolish_events/5 built-in predicate Previous | Next | Table of Contents | Bibliography | Glossary

-Last updated on: July 4, 2000 +Last updated on: July 29, 2002


diff --git a/Logtalk/manuals/userman/features.html b/Logtalk/manuals/userman/features.html index 59f248216..b38b3a0a3 100644 --- a/Logtalk/manuals/userman/features.html +++ b/Logtalk/manuals/userman/features.html @@ -1,11 +1,14 @@ - + + - + + + Logtalk features - + @@ -108,7 +111,7 @@ The Logtalk system has been designed to be compatible with most Prolog compilers Previous | Next | Table of Contents | Bibliography | Glossary

-Last updated on: May 6, 2002 +Last updated on: July 29, 2002


diff --git a/Logtalk/manuals/userman/index.html b/Logtalk/manuals/userman/index.html index 240eda2f9..de2abb920 100644 --- a/Logtalk/manuals/userman/index.html +++ b/Logtalk/manuals/userman/index.html @@ -1,11 +1,14 @@ - + + - + + + Logtalk User Manual - + @@ -218,7 +221,7 @@ Reference manual | Tutorial | Bibliography | Glossary

-Last updated on: June 15, 2002 +Last updated on: July 29, 2002


diff --git a/Logtalk/manuals/userman/inheritance.html b/Logtalk/manuals/userman/inheritance.html index 0f7847c03..0dc34572d 100644 --- a/Logtalk/manuals/userman/inheritance.html +++ b/Logtalk/manuals/userman/inheritance.html @@ -1,11 +1,14 @@ - + + - + + + Inheritance - + @@ -266,7 +269,7 @@ Nevertheless, Logtalk supports multi-inheritance by enabling an object to extend Previous | Next | Table of Contents | Bibliography | Glossary

-Last updated on: July 4, 2000 +Last updated on: July 29, 2002


diff --git a/Logtalk/manuals/userman/installing.html b/Logtalk/manuals/userman/installing.html index 3745465d4..69f91ac3b 100644 --- a/Logtalk/manuals/userman/installing.html +++ b/Logtalk/manuals/userman/installing.html @@ -1,11 +1,14 @@ - + + - + + + Installing and running Logtalk - + @@ -266,7 +269,15 @@ You can use the following options:
smart_compilation(Option)
-
Controls the use of smart compilation of source files to avoid recompiling files that are unchanged since the last time they are compiled. Possible option values are on and off (the usual default).
+
Controls the use of smart compilation of source files to avoid recompiling files that are unchanged since the last time they are compiled. Possible option values are on and off (the usual default).
+
+
+
named_anonymous_vars(Option)
+
Toggles the interpretation of variables that start with an underscore as named anonymous variables. Possible option values are on and off (the usual default).
+
+
+
code_prefix(Option)
+
Enables the definition of prefix for all functors of Logtalk generated Prolog code. Option value must be an atom. Default value is ''.

@@ -318,7 +329,7 @@ To supress printing of compiling and loading messages (including compiling warni Previous | Next | Table of Contents | Bibliography | Glossary

-Last updated on: June 12, 2002 +Last updated on: July 29, 2002


diff --git a/Logtalk/manuals/userman/messages.html b/Logtalk/manuals/userman/messages.html index 986126fb8..a59b8f000 100644 --- a/Logtalk/manuals/userman/messages.html +++ b/Logtalk/manuals/userman/messages.html @@ -1,11 +1,14 @@ - + + - + + + Message sending - + @@ -179,7 +182,7 @@ See the session on Event-driven programming for more details. Previous | Next | Table of Contents | Bibliography | Glossary

-Last updated on: May 6, 2002 +Last updated on: July 29, 2002


diff --git a/Logtalk/manuals/userman/objects.html b/Logtalk/manuals/userman/objects.html index ad29f742e..77a012c26 100644 --- a/Logtalk/manuals/userman/objects.html +++ b/Logtalk/manuals/userman/objects.html @@ -1,11 +1,14 @@ - + + - + + + Objects - + @@ -446,7 +449,7 @@ Logtalk defines a pseudo-object named user that contains all user p Previous | Next | Table of Contents | Bibliography | Glossary

-Last updated on: May 6, 2002 +Last updated on: July 29, 2002


diff --git a/Logtalk/manuals/userman/predicates.html b/Logtalk/manuals/userman/predicates.html index 33545a224..c989c6cba 100644 --- a/Logtalk/manuals/userman/predicates.html +++ b/Logtalk/manuals/userman/predicates.html @@ -1,11 +1,14 @@ - + + - + + + Predicates - + @@ -374,7 +377,7 @@ will only return user predicates that are declared public. Previous | Next | Table of Contents | Bibliography | Glossary

-Last updated on: May 6, 2002 +Last updated on: July 29, 2002


diff --git a/Logtalk/manuals/userman/programming.html b/Logtalk/manuals/userman/programming.html index 3ada22f4c..3e62f4f8d 100644 --- a/Logtalk/manuals/userman/programming.html +++ b/Logtalk/manuals/userman/programming.html @@ -1,11 +1,14 @@ - + + - + + + Programming in Logtalk - + @@ -95,7 +98,7 @@ Logtalk error handling strongly depends on the ISO compliance of the chosen Prol Previous | Next | Table of Contents | Bibliography | Glossary

-Last updated on: May 6, 2002 +Last updated on: July 29, 2002


diff --git a/Logtalk/manuals/userman/protocols.html b/Logtalk/manuals/userman/protocols.html index 064d5414a..c40d4da6b 100644 --- a/Logtalk/manuals/userman/protocols.html +++ b/Logtalk/manuals/userman/protocols.html @@ -1,11 +1,14 @@ - + + - + + + Protocols - + @@ -252,7 +255,7 @@ The same rules applies to protocols implemented by categories. Previous | Next | Table of Contents | Bibliography | Glossary

-Last updated on: May 6, 2002 +Last updated on: July 29, 2002


diff --git a/Logtalk/wenv/NOTES b/Logtalk/wenv/NOTES index 0e21ffea3..3dbc7bd03 100644 --- a/Logtalk/wenv/NOTES +++ b/Logtalk/wenv/NOTES @@ -1,6 +1,6 @@ ================================================================= Logtalk - Object oriented extension to Prolog -Release 2.13.0 +Release 2.14.1 Copyright (c) 1998-2002 Paulo Moura. All Rights Reserved. ================================================================= diff --git a/Logtalk/wenv/logtalk.pats b/Logtalk/wenv/logtalk.pats index dda94a9e6..027a67d76 100644 --- a/Logtalk/wenv/logtalk.pats +++ b/Logtalk/wenv/logtalk.pats @@ -1,52 +1 @@ -! Syntax highlighting patterns file for Logtalk (http://www.logtalk.org) -! -! Author: Paulo Moura (pmoura at logtalk.org) -! -! Last changed in: May, 21 -! -! -! To install this patterns file: -! -! 1. Load this file by starting nedit from the command line: -! -! % nedit -import logtalk.pats -! -! 2. Go to the Preferences menu and verify that the patterns were loaded -! correctly. -! -! 3. If everything is correct, choose the option Save Defaults from the -! Preferences menu. -! -! -nedit.fileVersion: 5.2 - -nedit.highlightPatterns: Logtalk:1:0{\n\ - Entity directives:":\\-\\sobject|:\\-\\sprotocol|:\\-\\scategory|:\\-\\send_object|:\\-\\send_protocol|:\\-\\send_category":::Keyword::\n\ - Entity relations:"<(instantiates|specializes|extends|imports|implements)>":::Keyword::\n\ - Directives:":\\-\\sinitialization|:\\-\\sinfo|:\\-\\smode|:\\-\\sdynamic|:\\-\\sdiscontiguous|:\\-\\spublic|:\\-\\sprotected|:\\-\\sprivate|:\\-\\smetapredicate|:\\-\\sop|:\\-\\scalls|:\\-\\suses":::Keyword::\n\ - Clause operators:":\\-|\\.":::Keyword::\n\ - Term testing:"<[^+?@-](var|atom|integer|float|atomic|compound|nonvar|number)>":::Subroutine1::\n\ - Message sending operators:"::|\\^\\^":::Keyword::\n\ - Control constructs:"!|,|;|\\-\\>|<(true|fail|call|catch|throw)>":::Subroutine::\n\ - Block comment:"/\\*":"\\*/"::Comment::\n\ - Line comment:"%":"$"::Comment::\n\ - String:"'":"'"::String::\n\ - Built-in methods:"<(parameter|self|sender|this|current_predicate|predicate_property|abolish|asserta|assertz|retractall|retract|bagof|findall|forall|setof|before|after)>":::Subroutine::\n\ - Arithmetic operators:"|\\+|\\*|\\-|/|=:=|=\\\\=|=\\<|\\>=|\\<|\\>":::Subroutine1::\n\ - Built-in predicates:"<(current_object|current_protocol|current_category|create_object|create_protocol|create_category|object_property|protocol_property|category_property|abolish_object|abolish_protocol|abolish_vategory|extends_object|extends_protocol|omplements_protocol|instantiates_object|specializes_object|imports_category|abolish_events|current_events|define_events|current_logtalk_flag|set_logtalk_flag|logtalk_compile|logtalk_load|forall|logtalk_version|retractall)>":::Subroutine1::\n\ - Term unification:"=||\\\\=":::Subroutine1::\n\ - Term comparison:"@=\\<|==|\\\\==|@\\>=|@\\<|@\\>":::Subroutine1::\n\ - Term creation and decomposition:"<(functor|arg|copy_term)>|=\\.\\.":::Subroutine1::\n\ - Mode operators:"\\?|@":::Subroutine1::\n\ - Stream selection and control:"<(current_input|current_output|set_input|set_output|open|close|flush_output|stream_property|at_end_of_stream|set_stream_position)>":::Subroutine1::\n\ - Character input-output:"<(get_char|get_code|peek_char|peek_code|put_char|put_code|nl)>":::Subroutine1::\n\ - Byte input-output:"<(get_byte|peek_byte|put_byte)>":::Subroutine1::\n\ - Term input-output:"<(read_term|read|write_canonical|write_term|writeq|write|current_op|op|current_char_conversion|char_conversion)>":::Subroutine1::\n\ - Logic and control:"\\\\\\+|<(once|repeat)>":::Subroutine::\n\ - Atomic term processing:"<(atom_length|atom_concat|sub_atom|atom_chars|atom_codes|char_code|number_chars|number_codes)>":::Subroutine1::\n\ - Implementation defined hooks:"<(set_prolog_flag|current_prolog_flag)>":::Subroutine1::\n\ - Evaluable functors:"\\+|-|\\*|//|/|<(rem|mod|abs|sign|float_integer_part|float_fractional_part|float|floor|truncate|round|ceiling)>":::Subroutine1::\n\ - Other arithemtic functors:"\\*\\*|<(sin|cos|atan|exp|log|sqrt)>":::Subroutine1::\n\ - Bitwise functors:">>|<<|/\\\\|\\\\/|\\\\":::Subroutine1::\n\ -} -nedit.languageModes: Logtalk:.lgt::::4:4:\n\ +! Syntax highlighting patterns file for Logtalk (http://www.logtalk.org) ! ! Author: Paulo Moura (pmoura at logtalk.org) ! ! Last changed in: May, 21 ! ! ! To install this patterns file: ! ! 1. Load this file by starting nedit from the command line: ! ! % nedit -import logtalk.pats ! ! 2. Go to the Preferences menu and verify that the patterns were loaded ! correctly. ! ! 3. If everything is correct, choose the option Save Defaults from the ! Preferences menu. ! ! nedit.fileVersion: 5.2 nedit.highlightPatterns: Logtalk:1:0{\n\ Entity directives:":\\-\\sobject|:\\-\\sprotocol|:\\-\\scategory|:\\-\\send_object|:\\-\\send_protocol|:\\-\\send_category":::Keyword::\n\ Entity relations:"<(instantiates|specializes|extends|imports|implements)>":::Keyword::\n\ Directives:":\\-\\sinitialization|:\\-\\sinfo|:\\-\\smode|:\\-\\sdynamic|:\\-\\sdiscontiguous|:\\-\\spublic|:\\-\\sprotected|:\\-\\sprivate|:\\-\\smetapredicate|:\\-\\sop|:\\-\\scalls|:\\-\\suses":::Keyword::\n\ Clause operators:":\\-|\\.":::Keyword::\n\ Term testing:"<[^+?@-](var|atom|integer|float|atomic|compound|nonvar|number)>":::Subroutine1::\n\ Message sending operators:"::|\\^\\^":::Keyword::\n\ Control constructs:"!|,|;|\\-\\>|<(true|fail|call|catch|throw)>":::Subroutine::\n\ Block comment:"/\\*":"\\*/"::Comment::\n\ Line comment:"%":"$"::Comment::\n\ String:"'":"'"::String::\n\ Built-in methods:"<(parameter|self|sender|this|current_predicate|predicate_property|abolish|asserta|assertz|retractall|retract|bagof|findall|forall|setof|before|after)>":::Subroutine::\n\ Arithmetic operators:"|\\+|\\*|\\-|/|=:=|=\\\\=|=\\<|\\>=|\\<|\\>":::Subroutine1::\n\ Built-in predicates:"<(current_object|current_protocol|current_category|create_object|create_protocol|create_category|object_property|protocol_property|category_property|abolish_object|abolish_protocol|abolish_vategory|extends_object|extends_protocol|omplements_protocol|instantiates_object|specializes_object|imports_category|abolish_events|current_events|define_events|current_logtalk_flag|set_logtalk_flag|logtalk_compile|logtalk_load|forall|logtalk_version|retractall)>":::Subroutine1::\n\ Term unification:"=||\\\\=":::Subroutine1::\n\ Term comparison:"@=\\<|==|\\\\==|@\\>=|@\\<|@\\>":::Subroutine1::\n\ Term creation and decomposition:"<(functor|arg|copy_term)>|=\\.\\.":::Subroutine1::\n\ Mode operators:"\\?|@":::Subroutine1::\n\ Stream selection and control:"<(current_input|current_output|set_input|set_output|open|close|flush_output|stream_property|at_end_of_stream|set_stream_position)>":::Subroutine1::\n\ Character input-output:"<(get_char|get_code|peek_char|peek_code|put_char|put_code|nl)>":::Subroutine1::\n\ Byte input-output:"<(get_byte|peek_byte|put_byte)>":::Subroutine1::\n\ Term input-output:"<(read_term|read|write_canonical|write_term|writeq|write|current_op|op|current_char_conversion|char_conversion)>":::Subroutine1::\n\ Logic and control:"\\\\\\+|<(once|repeat)>":::Subroutine::\n\ Atomic term processing:"<(atom_length|atom_concat|sub_atom|atom_chars|atom_codes|char_code|number_chars|number_codes)>":::Subroutine1::\n\ Implementation defined hooks:"<(set_prolog_flag|current_prolog_flag)>":::Subroutine1::\n\ Evaluable functors:"\\+|-|\\*|//|/|<(rem|mod|abs|sign|float_integer_part|float_fractional_part|float|floor|truncate|round|ceiling)>":::Subroutine1::\n\ Other arithemtic functors:"\\*\\*|<(sin|cos|atan|exp|log|sqrt)>":::Subroutine1::\n\ Bitwise functors:">>|<<|/\\\\|\\\\/|\\\\":::Subroutine1::\n\ } nedit.languageModes: Logtalk:.lgt::::4:4:\n\ \ No newline at end of file diff --git a/Logtalk/wenv/logtalk.syn b/Logtalk/wenv/logtalk.syn index 456973894..408dcffab 100644 --- a/Logtalk/wenv/logtalk.syn +++ b/Logtalk/wenv/logtalk.syn @@ -1,310 +1,310 @@ -; TextPad syntax definitions for Logtalk (http://www.logtalk.org/) -; -; Author: Paulo Moura -; Last changed in: May 21, 2002 -; -; Tags used and sugested colors: -; Keywords 1 message sending operators blue -; Keywords 2 entity enclosing directives purple -; Keywords 3 entity directives purple -; Keywords 4 built-in predicates -; Keywords 5 built-in methods - - -C=1 - -[Syntax] -Namespace1 = 6 -IgnoreCase = NO -InitKeyWordChars = -KeyWordChars = a-zA-Z0-9_:^;*+,-./;<=>?@[\]^{|} -KeyWordLength = -BracketChars = -OperatorChars = <=>?@[\]| -PreprocStart = -SyntaxStart = -SyntaxEnd = -HexPrefix = 0x -CommentStart = /* -CommentEnd = */ -CommentStartAlt = -CommentEndAlt = -SingleComment = % -SingleCommentCol = -SingleCommentAlt = -SingleCommentColAlt = -SingleCommentEsc = -StringsSpanLines = Yes -StringStart = ' -StringEnd = ' -StringAlt = " -StringEsc = ' -CharStart = -CharEnd = -CharEsc = - - -[Keywords 1] - -; Logtalk message sending operators - -^^ -:- -. -, -; -:: - - -; Logtalk external call -{ -} - - -[Keywords 2] - -; Logtalk opening entity directives -object -protocol -category - - -; Logtalk closing entity directives -end_object -end_protocol -end_category - -; Logtalk entity relations -instantiates -specializes -extends -imports -implements - - -[Keywords 3] - -; Logtalk directives -initialization -info -mode -dynamic -discontiguous -public -protected -private -metapredicate -op -calls -uses - - -[Keywords 4] - -; Logtalk built-in predicates -current_object -current_protocol -current_category -create_object -create_protocol -create_category -object_property -protocol_property -category_property -abolish_object -abolish_protocol -abolish_category -extends_object -extends_protocol -implements_protocol -instantiates_object -specializes_object -imports_category -abolish_events -current_event -define_events -current_logtalk_flag -set_logtalk_flag -logtalk_compile -logtalk_load -forall -logtalk_version -retractall - - -[Keywords 5] - -; Logtalk built-in methods -parameter -self -sender -this -current_predicate -predicate_property -abolish -asserta -assertz -clause -retract -retractall -bagof -findall -forall -setof -before -after - -; Mode operators -? -@ - -; Control constructs -true -fail -call -! -, -; --> -catch -throw - -; Term unification -= -unify_with_occurs_check -\= - -; Term testing -var -atom -integer -float -atomic -compound -nonvar -number - -; Term comparison -@=< -== -\== -@< -@> -@>= - -; Term creation and decomposition -functor -arg -=.. -copy_term - -; Arithemtic evaluation -is - -; Arithemtic comparison -=:= -=\= -< -=< -> ->= - -; Stream selection and control -current_input -current_output -set_input -set_output -open -close -flush_output -stream_property -at_end_of_stream -set_stream_position - -; Character input/output -get_char -get_code -peek_char -peek_code -put_char -put_code -nl - -; Byte input/output -get_byte -peek_byte -put_byte - -; Term input/output -read_term -read -write_term -write -writeq -write_canonical -op -current_op -char_conversion -current_char_conversion - -; Logic and control -\+ -once -repeat - -; Atomic term processing -atom_length -atom_concat -sub_atom -atom_chars -atom_codes -char_code -number_chars -number_codes - -; Implementation defined hooks functions -set_prolog_flag -current_prolog_flag -halt - -; Evaluable functors -+ -- -* -// -/ -rem -mod -abs -sign -float_integer_part -float_fractional_part -float -floor -truncate -round -ceiling - -; Other arithemtic functors -** -sin -cos -atan -exp -log -sqrt - -; Bitwise functors ->> -<< -/\ -\/ -\ - -; Logtalk end-of-clause -. - -; Logtalk list operator -| - - +; TextPad syntax definitions for Logtalk (http://www.logtalk.org/) +; +; Author: Paulo Moura +; Last changed in: May 21, 2002 +; +; Tags used and sugested colors: +; Keywords 1 message sending operators blue +; Keywords 2 entity enclosing directives purple +; Keywords 3 entity directives purple +; Keywords 4 built-in predicates +; Keywords 5 built-in methods + + +C=1 + +[Syntax] +Namespace1 = 6 +IgnoreCase = NO +InitKeyWordChars = +KeyWordChars = a-zA-Z0-9_:^;*+,-./;<=>?@[\]^{|} +KeyWordLength = +BracketChars = +OperatorChars = <=>?@[\]| +PreprocStart = +SyntaxStart = +SyntaxEnd = +HexPrefix = 0x +CommentStart = /* +CommentEnd = */ +CommentStartAlt = +CommentEndAlt = +SingleComment = % +SingleCommentCol = +SingleCommentAlt = +SingleCommentColAlt = +SingleCommentEsc = +StringsSpanLines = Yes +StringStart = ' +StringEnd = ' +StringAlt = " +StringEsc = ' +CharStart = +CharEnd = +CharEsc = + + +[Keywords 1] + +; Logtalk message sending operators + +^^ +:- +. +, +; +:: + + +; Logtalk external call +{ +} + + +[Keywords 2] + +; Logtalk opening entity directives +object +protocol +category + + +; Logtalk closing entity directives +end_object +end_protocol +end_category + +; Logtalk entity relations +instantiates +specializes +extends +imports +implements + + +[Keywords 3] + +; Logtalk directives +initialization +info +mode +dynamic +discontiguous +public +protected +private +metapredicate +op +calls +uses + + +[Keywords 4] + +; Logtalk built-in predicates +current_object +current_protocol +current_category +create_object +create_protocol +create_category +object_property +protocol_property +category_property +abolish_object +abolish_protocol +abolish_category +extends_object +extends_protocol +implements_protocol +instantiates_object +specializes_object +imports_category +abolish_events +current_event +define_events +current_logtalk_flag +set_logtalk_flag +logtalk_compile +logtalk_load +forall +logtalk_version +retractall + + +[Keywords 5] + +; Logtalk built-in methods +parameter +self +sender +this +current_predicate +predicate_property +abolish +asserta +assertz +clause +retract +retractall +bagof +findall +forall +setof +before +after + +; Mode operators +? +@ + +; Control constructs +true +fail +call +! +, +; +-> +catch +throw + +; Term unification += +unify_with_occurs_check +\= + +; Term testing +var +atom +integer +float +atomic +compound +nonvar +number + +; Term comparison +@=< +== +\== +@< +@> +@>= + +; Term creation and decomposition +functor +arg +=.. +copy_term + +; Arithemtic evaluation +is + +; Arithemtic comparison +=:= +=\= +< +=< +> +>= + +; Stream selection and control +current_input +current_output +set_input +set_output +open +close +flush_output +stream_property +at_end_of_stream +set_stream_position + +; Character input/output +get_char +get_code +peek_char +peek_code +put_char +put_code +nl + +; Byte input/output +get_byte +peek_byte +put_byte + +; Term input/output +read_term +read +write_term +write +writeq +write_canonical +op +current_op +char_conversion +current_char_conversion + +; Logic and control +\+ +once +repeat + +; Atomic term processing +atom_length +atom_concat +sub_atom +atom_chars +atom_codes +char_code +number_chars +number_codes + +; Implementation defined hooks functions +set_prolog_flag +current_prolog_flag +halt + +; Evaluable functors ++ +- +* +// +/ +rem +mod +abs +sign +float_integer_part +float_fractional_part +float +floor +truncate +round +ceiling + +; Other arithemtic functors +** +sin +cos +atan +exp +log +sqrt + +; Bitwise functors +>> +<< +/\ +\/ +\ + +; Logtalk end-of-clause +. + +; Logtalk list operator +| + + diff --git a/Logtalk/xml/NOTES b/Logtalk/xml/NOTES index a572c7705..7e9316a71 100644 --- a/Logtalk/xml/NOTES +++ b/Logtalk/xml/NOTES @@ -1,6 +1,6 @@ ================================================================= Logtalk - Object oriented extension to Prolog -Release 2.13.0 +Release 2.14.1 Copyright (c) 1998-2002 Paulo Moura. All Rights Reserved. ================================================================= @@ -19,7 +19,7 @@ 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 +the '$lgt_default_flag'/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). @@ -87,11 +87,24 @@ logtalk.css html.sh Sample Unix shell script to batch convert .xml files to .html files. + The script also generates an index.html file that contains links to all + converted files. The title of the index.html can be given as a parameter + to the script. Edit the script to match your environment before running it. Requires James Clarck XT processor (http://www.jclark.com/xml/xt.html). -html.bat +htmlnt.cmd + + Sample Windows NT batch script to convert .xml files to .html files. + The script also generates an index.html file that contains links to all + converted files. The title of the index.html can be given as a parameter + to the script. + Edit the script to match your environment before running it. + Requires James Clarck XT processor (http://www.jclark.com/xml/xt.html). + + +htmldos.bat Sample DOS batch script to convert .xml files to .html files. Edit the script to match your environment before running it. diff --git a/Logtalk/xml/html.sh b/Logtalk/xml/html.sh index 0983ae935..2a930a45f 100644 --- a/Logtalk/xml/html.sh +++ b/Logtalk/xml/html.sh @@ -6,18 +6,58 @@ XP_PATH="." XSLT="lgthtml.xsl" -echo +if [ -z "$1" ]; then + title="Entity documentation index" +else + title="$1" +fi + +echo echo This script converts all .xml files in the current directory to .html echo files applying the XSLT transformation defined in the $XSLT file -echo using the James Clark XT XSLT Java processor +echo using the James Clark XT XSLT Java processor. echo +echo An index.html file, containing links to all .html documenting files, +echo is automatically generated. This file uses the script optional parameter +echo value as the title of the index.html file. +echo +echo converting XML files to HTML... foreach file (*.xml) - echo converting $file + echo " "converting $file name="`expr "$file" : '\(.*\)\.[^./]*$' \| "$file"`" eval java -cp ${XT_PATH}/xt.jar:${SAX_PATH}/sax.jar:${XP_PATH}/xp.jar -Dcom.jclark.xsl.sax.parser=com.jclark.xml.sax.CommentDriver com.jclark.xsl.sax.Driver $file $XSLT $name.html end -echo echo conversion done echo +echo generating index file... + +> index.html + +echo "" >> index.html +echo "" >> index.html +echo "" >> index.html +echo " "$title"" >> index.html +echo " " >> index.html +echo "" >> index.html +echo "" >> index.html +echo "

"$title"

" >> index.html +echo "
    " >> index.html + +foreach file (*.xml) + name="`expr "$file" : '\(.*\)\.[^./]*$' \| "$file"`" + echo " "indexing $name.html + echo "
  • "$name"
  • " >> index.html +end + +echo "
" >> index.html + +date="`eval date`" + +echo "

Generated on "$date"

" >> index.html +echo "" >> index.html +echo "" >> index.html + +echo index file generated +echo diff --git a/Logtalk/xml/ie50.xsl b/Logtalk/xml/ie50.xsl index 8c8aa3787..adad0f66a 100644 --- a/Logtalk/xml/ie50.xsl +++ b/Logtalk/xml/ie50.xsl @@ -8,7 +8,7 @@ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % % Logtalk - Object oriented extension to Prolog -% Release 2.13.0 +% Release 2.14.1 % % Copyright (c) 1998-2002 Paulo Moura. All Rights Reserved. % diff --git a/Logtalk/xml/lgthtml.xsl b/Logtalk/xml/lgthtml.xsl index a6489c007..68fb57ffe 100644 --- a/Logtalk/xml/lgthtml.xsl +++ b/Logtalk/xml/lgthtml.xsl @@ -14,7 +14,7 @@ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % % Logtalk - Object oriented extension to Prolog -% Release 2.13.0 +% Release 2.14.1 % % Copyright (c) 1998-2002 Paulo Moura. All Rights Reserved. % diff --git a/Logtalk/xml/lgtpdfa4.xsl b/Logtalk/xml/lgtpdfa4.xsl index 4fdc28f71..b47752819 100644 --- a/Logtalk/xml/lgtpdfa4.xsl +++ b/Logtalk/xml/lgtpdfa4.xsl @@ -9,7 +9,7 @@ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % % Logtalk - Object oriented extension to Prolog -% Release 2.13.0 +% Release 2.14.1 % % Copyright (c) 1998-2002 Paulo Moura. All Rights Reserved. % diff --git a/Logtalk/xml/lgtpdfus.xsl b/Logtalk/xml/lgtpdfus.xsl index 06173d2e7..8cb197077 100644 --- a/Logtalk/xml/lgtpdfus.xsl +++ b/Logtalk/xml/lgtpdfus.xsl @@ -9,7 +9,7 @@ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % % Logtalk - Object oriented extension to Prolog -% Release 2.13.0 +% Release 2.14.1 % % Copyright (c) 1998-2002 Paulo Moura. All Rights Reserved. % diff --git a/Logtalk/xml/lgtxml.xsl b/Logtalk/xml/lgtxml.xsl index 2fc897bd5..6eb57b25d 100644 --- a/Logtalk/xml/lgtxml.xsl +++ b/Logtalk/xml/lgtxml.xsl @@ -14,7 +14,7 @@ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % % Logtalk - Object oriented extension to Prolog -% Release 2.13.0 +% Release 2.14.1 % % Copyright (c) 1998-2002 Paulo Moura. All Rights Reserved. % diff --git a/Logtalk/xml/logtalk.dtd b/Logtalk/xml/logtalk.dtd index 04a25882d..5b29b2da9 100644 --- a/Logtalk/xml/logtalk.dtd +++ b/Logtalk/xml/logtalk.dtd @@ -3,7 +3,7 @@ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % % Logtalk - Object oriented extension to Prolog -% Release 2.13.0 +% Release 2.14.1 % % Copyright (c) 1998-2002 Paulo Moura. All Rights Reserved. % diff --git a/Logtalk/xml/logtalk.xsd b/Logtalk/xml/logtalk.xsd index e5dd3c707..0101f87c0 100644 --- a/Logtalk/xml/logtalk.xsd +++ b/Logtalk/xml/logtalk.xsd @@ -15,7 +15,7 @@ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % % Logtalk - Object oriented extension to Prolog -% Release 2.13.0 +% Release 2.14.1 % % Copyright (c) 1998-2002 Paulo Moura. All Rights Reserved. % diff --git a/Logtalk/xml/texml.xsl b/Logtalk/xml/texml.xsl index 3e94a7354..3b1f66940 100644 --- a/Logtalk/xml/texml.xsl +++ b/Logtalk/xml/texml.xsl @@ -12,7 +12,7 @@ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % % Logtalk - Object oriented extension to Prolog -% Release 2.13.0 +% Release 2.14.1 % % Copyright (c) 1998-2002 Paulo Moura. All Rights Reserved. % diff --git a/library/logtalk/logtalk.pl b/library/logtalk/logtalk.pl index 13db9e54a..62c2aa0fa 100644 --- a/library/logtalk/logtalk.pl +++ b/library/logtalk/logtalk.pl @@ -2,7 +2,7 @@ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % % Logtalk - Object oriented extension to Prolog -% Release 2.13.0 +% Release 2.14.1 % % Copyright (c) 1998-2002 Paulo Moura. All Rights Reserved. % @@ -47,23 +47,23 @@ % tables of defined events and monitors -:- dynamic(lgt_before_/5). % lgt_before_(Obj, Msg, Sender, Monitor, Call) -:- dynamic(lgt_after_/5). % lgt_after_(Obj, Msg, Sender, Monitor, Call) +:- dynamic('$lgt_before_'/5). % '$lgt_before_'(Obj, Msg, Sender, Monitor, Call) +:- dynamic('$lgt_after_'/5). % '$lgt_after_'(Obj, Msg, Sender, Monitor, Call) % tables of loaded entities and respective relationships -:- dynamic(lgt_current_protocol_/2). % lgt_current_protocol_(Ptc, Prefix) -:- dynamic(lgt_current_category_/2). % lgt_current_category_(Ctg, Prefix) -:- dynamic(lgt_current_object_/5). % lgt_current_object_(Obj, Prefix, Dcl, Def, Super) +:- dynamic('$lgt_current_protocol_'/2). % '$lgt_current_protocol_'(Ptc, Prefix) +:- dynamic('$lgt_current_category_'/2). % '$lgt_current_category_'(Ctg, Prefix) +:- dynamic('$lgt_current_object_'/5). % '$lgt_current_object_'(Obj, Prefix, Dcl, Def, Super) -:- dynamic(lgt_implements_protocol_/3). % lgt_implements_protocol_(ObjOrCtg, Ptc, Scope) -:- dynamic(lgt_imports_category_/3). % lgt_imports_category_(Obj, Ctg, Scope) -:- dynamic(lgt_instantiates_class_/3). % lgt_instantiates_class_(Instance, Class, Scope) -:- dynamic(lgt_specializes_class_/3). % lgt_specializes_class_(Class, Superclass, Scope) -:- dynamic(lgt_extends_protocol_/3). % lgt_extends_protocol_(Ptc1, Ptc2, Scope) -:- dynamic(lgt_extends_object_/3). % lgt_extends_object_(Prototype, Parent, Scope) +:- dynamic('$lgt_implements_protocol_'/3). % '$lgt_implements_protocol_'(ObjOrCtg, Ptc, Scope) +:- dynamic('$lgt_imports_category_'/3). % '$lgt_imports_category_'(Obj, Ctg, Scope) +:- dynamic('$lgt_instantiates_class_'/3). % '$lgt_instantiates_class_'(Instance, Class, Scope) +:- dynamic('$lgt_specializes_class_'/3). % '$lgt_specializes_class_'(Class, Superclass, Scope) +:- dynamic('$lgt_extends_protocol_'/3). % '$lgt_extends_protocol_'(Ptc1, Ptc2, Scope) +:- dynamic('$lgt_extends_object_'/3). % '$lgt_extends_object_'(Prototype, Parent, Scope) @@ -76,58 +76,58 @@ -:- dynamic(lgt_dcl_/1). % lgt_dcl_(Clause) -:- dynamic(lgt_ddcl_/1). % lgt_ddcl_(Clause) -:- dynamic(lgt_def_/1). % lgt_def_(Clause) -:- dynamic(lgt_ddef_/1). % lgt_ddef_(Clause) -:- dynamic(lgt_super_/1). % lgt_super_(Clause) +:- dynamic('$lgt_dcl_'/1). % '$lgt_dcl_'(Clause) +:- dynamic('$lgt_ddcl_'/1). % '$lgt_ddcl_'(Clause) +:- dynamic('$lgt_def_'/1). % '$lgt_def_'(Clause) +:- dynamic('$lgt_ddef_'/1). % '$lgt_ddef_'(Clause) +:- dynamic('$lgt_super_'/1). % '$lgt_super_'(Clause) -:- dynamic(lgt_dynamic_/1). % lgt_dynamic_(Functor/Arity) -:- dynamic(lgt_discontiguous_/1). % lgt_discontiguous_(Functor/Arity) -:- dynamic(lgt_mode_/2). % lgt_mode_(Mode, Determinism) -:- dynamic(lgt_public_/1). % lgt_public_(Functor/Arity) -:- dynamic(lgt_protected_/1). % lgt_protected_(Functor/Arity) -:- dynamic(lgt_private_/1). % lgt_private_(Functor/Arity) -:- dynamic(lgt_metapredicate_/1). % lgt_metapredicate_(Pred) +:- dynamic('$lgt_dynamic_'/1). % '$lgt_dynamic_'(Functor/Arity) +:- dynamic('$lgt_discontiguous_'/1). % '$lgt_discontiguous_'(Functor/Arity) +:- dynamic('$lgt_mode_'/2). % '$lgt_mode_'(Mode, Determinism) +:- dynamic('$lgt_public_'/1). % '$lgt_public_'(Functor/Arity) +:- dynamic('$lgt_protected_'/1). % '$lgt_protected_'(Functor/Arity) +:- dynamic('$lgt_private_'/1). % '$lgt_private_'(Functor/Arity) +:- dynamic('$lgt_metapredicate_'/1). % '$lgt_metapredicate_'(Pred) -:- dynamic(lgt_object_/9). % lgt_object_(Obj, Prefix, Dcl, Def, Super, IDcl, IDef, DDcl, DDef) -:- dynamic(lgt_category_/4). % lgt_category_(Ctg, Prefix, Dcl, Def) -:- dynamic(lgt_protocol_/3). % lgt_protocol_(Ptc, Prefix, Dcl) +:- dynamic('$lgt_object_'/9). % '$lgt_object_'(Obj, Prefix, Dcl, Def, Super, IDcl, IDef, DDcl, DDef) +:- dynamic('$lgt_category_'/4). % '$lgt_category_'(Ctg, Prefix, Dcl, Def) +:- dynamic('$lgt_protocol_'/3). % '$lgt_protocol_'(Ptc, Prefix, Dcl) -:- dynamic(lgt_uses_/1). % lgt_uses_(Entity) -:- dynamic(lgt_calls_/1). % lgt_calls_(Entity) -:- dynamic(lgt_info_/1). % lgt_info_(List) -:- dynamic(lgt_info_/2). % lgt_info_(Functor/Arity, List) +:- dynamic('$lgt_uses_'/1). % '$lgt_uses_'(Entity) +:- dynamic('$lgt_calls_'/1). % '$lgt_calls_'(Entity) +:- dynamic('$lgt_info_'/1). % '$lgt_info_'(List) +:- dynamic('$lgt_info_'/2). % '$lgt_info_'(Functor/Arity, List) -:- dynamic(lgt_implemented_protocol_/4). % lgt_implemented_protocol_(Ptc, Prefix, Dcl, Scope) -:- dynamic(lgt_imported_category_/5). % lgt_imported_category_(Ctg, Prefix, Dcl, Def, Scope) -:- dynamic(lgt_extended_object_/10). % lgt_extended_object_(Parent, Prefix, Dcl, Def, Super, IDcl, IDef, DDcl, DDef, Scope) -:- dynamic(lgt_instantiated_class_/10). % lgt_instantiated_class_(Class, Prefix, Dcl, Def, Super, IDcl, IDef, DDcl, DDef, Scope) -:- dynamic(lgt_specialized_class_/10). % lgt_specialized_class_(Superclass, Prefix, Dcl, Def, Super, IDcl, IDef, DDcl, DDef, Scope) -:- dynamic(lgt_extended_protocol_/4). % lgt_extended_protocol_(Ptc2, Prefix, Dcl, Scope) +:- dynamic('$lgt_implemented_protocol_'/4). % '$lgt_implemented_protocol_'(Ptc, Prefix, Dcl, Scope) +:- dynamic('$lgt_imported_category_'/5). % '$lgt_imported_category_'(Ctg, Prefix, Dcl, Def, Scope) +:- dynamic('$lgt_extended_object_'/10). % '$lgt_extended_object_'(Parent, Prefix, Dcl, Def, Super, IDcl, IDef, DDcl, DDef, Scope) +:- dynamic('$lgt_instantiated_class_'/10). % '$lgt_instantiated_class_'(Class, Prefix, Dcl, Def, Super, IDcl, IDef, DDcl, DDef, Scope) +:- dynamic('$lgt_specialized_class_'/10). % '$lgt_specialized_class_'(Superclass, Prefix, Dcl, Def, Super, IDcl, IDef, DDcl, DDef, Scope) +:- dynamic('$lgt_extended_protocol_'/4). % '$lgt_extended_protocol_'(Ptc2, Prefix, Dcl, Scope) -:- dynamic(lgt_entity_/4). % lgt_entity_(Type, Entity, Prefix, Dcl) -:- dynamic(lgt_entity_functors_/1). % lgt_entity_functors_(Clause) -:- dynamic(lgt_entity_init_/1). % lgt_entity_init_(Goal) -:- dynamic(lgt_fentity_init_/1). % lgt_fentity_init_(Goal) -:- dynamic(lgt_entity_comp_mode_/1). % lgt_entity_comp_mode_(Type) +:- dynamic('$lgt_entity_'/4). % '$lgt_entity_'(Type, Entity, Prefix, Dcl) +:- dynamic('$lgt_entity_functors_'/1). % '$lgt_entity_functors_'(Clause) +:- dynamic('$lgt_entity_init_'/1). % '$lgt_entity_init_'(Goal) +:- dynamic('$lgt_fentity_init_'/1). % '$lgt_fentity_init_'(Goal) +:- dynamic('$lgt_entity_comp_mode_'/1). % '$lgt_entity_comp_mode_'(Type) -:- dynamic(lgt_redefined_built_in_/3). % lgt_redefined_built_in_(Head, Context, THead) +:- dynamic('$lgt_redefined_built_in_'/3). % '$lgt_redefined_built_in_'(Head, Context, THead) -:- dynamic(lgt_directive_/1). % lgt_directive_(Dir) -:- dynamic(lgt_rclause_/1). % lgt_rclause_(Clause) -:- dynamic(lgt_eclause_/1). % lgt_eclause_(Clause) -:- dynamic(lgt_feclause_/1). % lgt_feclause_(Clause) +:- dynamic('$lgt_directive_'/1). % '$lgt_directive_'(Dir) +:- dynamic('$lgt_rclause_'/1). % '$lgt_rclause_'(Clause) +:- dynamic('$lgt_eclause_'/1). % '$lgt_eclause_'(Clause) +:- dynamic('$lgt_feclause_'/1). % '$lgt_feclause_'(Clause) -:- dynamic(lgt_defs_pred_/1). % lgt_defs_pred_(Functor/Arity) -:- dynamic(lgt_calls_pred_/1). % lgt_calls_pred_(Functor/Arity) +:- dynamic('$lgt_defs_pred_'/1). % '$lgt_defs_pred_'(Functor/Arity) +:- 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_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) -:- dynamic(lgt_referenced_category_/1). % lgt_referenced_object_(Category) +:- dynamic('$lgt_referenced_object_'/1). % '$lgt_referenced_object_'(Object) +:- dynamic('$lgt_referenced_protocol_'/1). % '$lgt_referenced_protocol_'(Protocol) +:- dynamic('$lgt_referenced_category_'/1). % '$lgt_referenced_object_'(Category) @@ -149,10 +149,10 @@ Obj::Pred :- throw(error(instantiation_error, Obj::Pred, user)). Obj::Pred :- - lgt_sender(Context, user), - lgt_this(Context, user), - lgt_self(Context, Obj), - lgt_tr_msg(Obj, Pred, Call, Context), + '$lgt_sender'(Context, user), + '$lgt_this'(Context, user), + '$lgt_self'(Context, Obj), + '$lgt_tr_msg'(Obj, Pred, Call, Context), call(Call). @@ -170,11 +170,11 @@ Obj::Pred :- current_object(Obj) :- nonvar(Obj), - \+ lgt_valid_object_id(Obj), + \+ '$lgt_valid_object_id'(Obj), throw(error(type_error(object_identifier, Obj), current_object(Obj))). current_object(Obj) :- - lgt_current_object_(Obj, _, _, _, _). + '$lgt_current_object_'(Obj, _, _, _, _). @@ -182,11 +182,11 @@ current_object(Obj) :- current_protocol(Ptc) :- nonvar(Ptc), - \+ lgt_valid_protocol_id(Ptc), + \+ '$lgt_valid_protocol_id'(Ptc), throw(error(type_error(protocol_identifier, Ptc), current_protocol(Ptc))). current_protocol(Ptc) :- - lgt_current_protocol_(Ptc, _). + '$lgt_current_protocol_'(Ptc, _). @@ -194,11 +194,11 @@ current_protocol(Ptc) :- current_category(Ctg) :- nonvar(Ctg), - \+ lgt_valid_category_id(Ctg), + \+ '$lgt_valid_category_id'(Ctg), throw(error(type_error(category_identifier, Ctg), current_category(Ctg))). current_category(Ctg) :- - lgt_current_category_(Ctg, _). + '$lgt_current_category_'(Ctg, _). @@ -206,20 +206,20 @@ current_category(Ctg) :- object_property(Obj, Prop) :- nonvar(Obj), - \+ lgt_valid_object_id(Obj), + \+ '$lgt_valid_object_id'(Obj), throw(error(type_error(object_identifier, Obj), object_property(Obj, Prop))). object_property(Obj, Prop) :- nonvar(Prop), - \+ lgt_member(Prop, [(dynamic), static, built_in]), + \+ '$lgt_member'(Prop, [(dynamic), static, built_in]), throw(error(domain_error(object_property, Prop), object_property(Obj, Prop))). object_property(user, built_in). object_property(Obj, Prop) :- - lgt_current_object_(Obj, Prefix, _, _, _), + '$lgt_current_object_'(Obj, Prefix, _, _, _), functor(Pred, Prefix, 7), - (lgt_predicate_property(Pred, (dynamic)) -> + ('$lgt_predicate_property'(Pred, (dynamic)) -> Prop = (dynamic) ; Prop = static). @@ -230,18 +230,18 @@ object_property(Obj, Prop) :- category_property(Ctg, Prop) :- nonvar(Ctg), - \+ lgt_valid_category_id(Ctg), + \+ '$lgt_valid_category_id'(Ctg), throw(error(type_error(category_identifier, Ctg), category_property(Ctg, Prop))). category_property(Ctg, Prop) :- nonvar(Prop), - \+ lgt_member(Prop, [(dynamic), static, built_in]), + \+ '$lgt_member'(Prop, [(dynamic), static, built_in]), throw(error(domain_error(category_property, Prop), category_property(Ctg, Prop))). category_property(Ctg, Prop) :- - lgt_current_category_(Ctg, Prefix), + '$lgt_current_category_'(Ctg, Prefix), functor(Pred, Prefix, 2), - (lgt_predicate_property(Pred, (dynamic)) -> + ('$lgt_predicate_property'(Pred, (dynamic)) -> Prop = (dynamic) ; Prop = static). @@ -252,18 +252,18 @@ category_property(Ctg, Prop) :- protocol_property(Ptc, Prop) :- nonvar(Ptc), - \+ lgt_valid_protocol_id(Ptc), + \+ '$lgt_valid_protocol_id'(Ptc), throw(error(type_error(protocol_identifier, Ptc), protocol_property(Ptc, Prop))). protocol_property(Ptc, Prop) :- nonvar(Prop), - \+ lgt_member(Prop, [(dynamic), static, built_in]), + \+ '$lgt_member'(Prop, [(dynamic), static, built_in]), throw(error(domain_error(protocol_property, Prop), protocol_property(Ptc, Prop))). protocol_property(Ptc, Prop) :- - lgt_current_protocol_(Ptc, Prefix), + '$lgt_current_protocol_'(Ptc, Prefix), functor(Pred, Prefix, 1), - (lgt_predicate_property(Pred, (dynamic)) -> + ('$lgt_predicate_property'(Pred, (dynamic)) -> Prop = (dynamic) ; Prop = static). @@ -277,43 +277,43 @@ create_object(Obj, Rels, Dirs, Clauses) :- throw(error(instantiation_error, create_object(Obj, Rels, Dirs, Clauses))). create_object(Obj, Rels, Dirs, Clauses) :- - \+ lgt_valid_object_id(Obj), + \+ '$lgt_valid_object_id'(Obj), throw(error(type_error(object_identifier, Obj), create_object(Obj, Rels, Dirs, Clauses))). create_object(Obj, Rels, Dirs, Clauses) :- - lgt_current_object_(Obj, _, _, _, _), + '$lgt_current_object_'(Obj, _, _, _, _), throw(error(permission_error(replace, object, Obj), create_object(Obj, Rels, Dirs, Clauses))). create_object(Obj, Rels, Dirs, Clauses) :- - lgt_current_category_(Obj, _), + '$lgt_current_category_'(Obj, _), throw(error(permission_error(replace, category, Obj), create_object(Obj, Rels, Dirs, Clauses))). create_object(Obj, Rels, Dirs, Clauses) :- - lgt_current_protocol_(Obj, _), + '$lgt_current_protocol_'(Obj, _), throw(error(permission_error(replace, protocol, Obj), create_object(Obj, Rels, Dirs, Clauses))). create_object(Obj, Rels, Dirs, Clauses) :- - (var(Rels); \+ lgt_proper_list(Rels)), + (var(Rels); \+ '$lgt_proper_list'(Rels)), throw(error(type_error(list, Rels), create_object(Obj, Rels, Dirs, Clauses))). create_object(Obj, Rels, Dirs, Clauses) :- - (var(Dirs); \+ lgt_proper_list(Dirs)), + (var(Dirs); \+ '$lgt_proper_list'(Dirs)), throw(error(type_error(list, Dirs), create_object(Obj, Rels, Dirs, Clauses))). create_object(Obj, Rels, Dirs, Clauses) :- - (var(Clauses); \+ lgt_proper_list(Clauses)), + (var(Clauses); \+ '$lgt_proper_list'(Clauses)), throw(error(type_error(list, Clauses), create_object(Obj, Rels, Dirs, Clauses))). create_object(Obj, Rels, Dirs, Clauses) :- - lgt_clean_up, - lgt_tr_directive(object, [Obj| Rels]), - lgt_tr_directives([(dynamic)| Dirs]), - lgt_tr_clauses(Clauses), - lgt_fix_redef_built_ins, - lgt_gen_object_clauses, - lgt_gen_object_directives, - lgt_assert_tr_entity, - lgt_report_unknown_entities. + '$lgt_clean_up', + '$lgt_tr_directive'(object, [Obj| Rels]), + '$lgt_tr_directives'([(dynamic)| Dirs]), + '$lgt_tr_clauses'(Clauses), + '$lgt_fix_redef_built_ins', + '$lgt_gen_object_clauses', + '$lgt_gen_object_directives', + '$lgt_assert_tr_entity', + '$lgt_report_unknown_entities'. @@ -324,43 +324,43 @@ create_category(Ctg, Rels, Dirs, Clauses) :- throw(error(instantiation_error, create_category(Ctg, Rels, Dirs, Clauses))). create_category(Ctg, Rels, Dirs, Clauses) :- - \+ lgt_valid_category_id(Ctg), + \+ '$lgt_valid_category_id'(Ctg), throw(error(type_error(category_identifier, Ctg), create_category(Ctg, Rels, Dirs, Clauses))). create_category(Ctg, Rels, Dirs, Clauses) :- - lgt_current_category_(Ctg, _), + '$lgt_current_category_'(Ctg, _), throw(error(permission_error(replace, category, Ctg), create_category(Ctg, Rels, Dirs, Clauses))). create_category(Ctg, Rels, Dirs, Clauses) :- - lgt_current_object_(Ctg, _, _, _, _), + '$lgt_current_object_'(Ctg, _, _, _, _), throw(error(permission_error(replace, object, Ctg), create_category(Ctg, Rels, Dirs, Clauses))). create_category(Ctg, Rels, Dirs, Clauses) :- - lgt_current_protocol_(Ctg, _), + '$lgt_current_protocol_'(Ctg, _), throw(error(permission_error(replace, protocol, Ctg), create_category(Ctg, Rels, Dirs, Clauses))). create_category(Ctg, Rels, Dirs, Clauses) :- - (var(Rels); \+ lgt_proper_list(Rels)), + (var(Rels); \+ '$lgt_proper_list'(Rels)), throw(error(type_error(list, Rels), create_category(Ctg, Rels, Dirs, Clauses))). create_category(Ctg, Rels, Dirs, Clauses) :- - (var(Dirs); \+ lgt_proper_list(Dirs)), + (var(Dirs); \+ '$lgt_proper_list'(Dirs)), throw(error(type_error(list, Dirs), create_category(Ctg, Rels, Dirs, Clauses))). create_category(Ctg, Rels, Dirs, Clauses) :- - (var(Clauses); \+ lgt_proper_list(Clauses)), + (var(Clauses); \+ '$lgt_proper_list'(Clauses)), throw(error(type_error(list, Clauses), create_category(Ctg, Rels, Dirs, Clauses))). create_category(Ctg, Rels, Dirs, Clauses) :- - lgt_clean_up, - lgt_tr_directive(category, [Ctg| Rels]), - lgt_tr_directives([(dynamic)| Dirs]), - lgt_tr_clauses(Clauses), - lgt_fix_redef_built_ins, - lgt_gen_category_clauses, - lgt_gen_category_directives, - lgt_assert_tr_entity, - lgt_report_unknown_entities. + '$lgt_clean_up', + '$lgt_tr_directive'(category, [Ctg| Rels]), + '$lgt_tr_directives'([(dynamic)| Dirs]), + '$lgt_tr_clauses'(Clauses), + '$lgt_fix_redef_built_ins', + '$lgt_gen_category_clauses', + '$lgt_gen_category_directives', + '$lgt_assert_tr_entity', + '$lgt_report_unknown_entities'. @@ -371,37 +371,37 @@ create_protocol(Ptc, Rels, Dirs) :- throw(error(instantiation_error, create_protocol(Ptc, Rels, Dirs))). create_protocol(Ptc, Rels, Dirs) :- - \+ lgt_valid_protocol_id(Ptc), + \+ '$lgt_valid_protocol_id'(Ptc), throw(error(type_error(protocol_identifier, Ptc), create_protocol(Ptc, Rels, Dirs))). create_protocol(Ptc, Rels, Dirs) :- - lgt_current_protocol_(Ptc, _), + '$lgt_current_protocol_'(Ptc, _), throw(error(permission_error(replace, protocol, Ptc), create_protocol(Ptc, Rels, Dirs))). create_protocol(Ptc, Rels, Dirs) :- - lgt_current_object_(Ptc, _, _, _, _), + '$lgt_current_object_'(Ptc, _, _, _, _), throw(error(permission_error(replace, object, Ptc), create_protocol(Ptc, Rels, Dirs))). create_protocol(Ptc, Rels, Dirs) :- - lgt_current_category_(Ptc, _), + '$lgt_current_category_'(Ptc, _), throw(error(permission_error(replace, category, Ptc), create_protocol(Ptc, Rels, Dirs))). create_protocol(Ptc, Rels, Dirs) :- - (var(Rels); \+ lgt_proper_list(Rels)), + (var(Rels); \+ '$lgt_proper_list'(Rels)), throw(error(type_error(list, Rels), create_protocol(Ptc, Rels, Dirs))). create_protocol(Ptc, Rels, Dirs) :- - (var(Dirs); \+ lgt_proper_list(Dirs)), + (var(Dirs); \+ '$lgt_proper_list'(Dirs)), throw(error(type_error(list, Dirs), create_protocol(Ptc, Rels, Dirs))). create_protocol(Ptc, Rels, Dirs) :- - lgt_clean_up, - lgt_tr_directive(protocol, [Ptc| Rels]), - lgt_tr_directives([(dynamic)| Dirs]), - lgt_gen_protocol_clauses, - lgt_gen_protocol_directives, - lgt_assert_tr_entity, - lgt_report_unknown_entities. + '$lgt_clean_up', + '$lgt_tr_directive'(protocol, [Ptc| Rels]), + '$lgt_tr_directives'([(dynamic)| Dirs]), + '$lgt_gen_protocol_clauses', + '$lgt_gen_protocol_directives', + '$lgt_assert_tr_entity', + '$lgt_report_unknown_entities'. @@ -412,19 +412,19 @@ abolish_object(Obj) :- throw(error(instantiation_error, abolish_object(Obj))). abolish_object(Obj) :- - \+ lgt_valid_object_id(Obj), + \+ '$lgt_valid_object_id'(Obj), throw(error(type_error(object_identifier, Obj), abolish_object(Obj))). abolish_object(Obj) :- - lgt_current_object_(Obj, Prefix, _, _, _) -> + '$lgt_current_object_'(Obj, Prefix, _, _, _) -> (object_property(Obj, (dynamic)) -> - lgt_once(Prefix, Dcl, Def, Super, IDcl, IDef, DDcl, DDef), + '$lgt_once'(Prefix, Dcl, Def, Super, IDcl, IDef, DDcl, DDef), forall( - lgt_call(Def, _, _, _, _, Pred), + '$lgt_call'(Def, _, _, _, _, Pred), (functor(Pred, Functor, Arity), abolish(Functor/Arity))), forall( - lgt_call(DDef, _, _, _, _, Pred), + '$lgt_call'(DDef, _, _, _, _, Pred), (functor(Pred, Functor, Arity), abolish(Functor/Arity))), abolish(Dcl/4), @@ -437,12 +437,12 @@ abolish_object(Obj) :- abolish(DDcl/4), abolish(DDef/5), abolish(Prefix/7), - retractall(lgt_current_object_(Obj, _, _, _, _)), - retractall(lgt_extends_object_(Obj, _, _)), - retractall(lgt_instantiates_class_(Obj, _, _)), - retractall(lgt_specializes_class_(Obj, _, _)), - retractall(lgt_implements_protocol_(Obj, _, _)), - retractall(lgt_imports_category_(Obj, _, _)) + retractall('$lgt_current_object_'(Obj, _, _, _, _)), + retractall('$lgt_extends_object_'(Obj, _, _)), + retractall('$lgt_instantiates_class_'(Obj, _, _)), + retractall('$lgt_specializes_class_'(Obj, _, _)), + retractall('$lgt_implements_protocol_'(Obj, _, _)), + retractall('$lgt_imports_category_'(Obj, _, _)) ; throw(error(permission_error(modify, static_object, Obj), abolish_object(Obj)))) ; @@ -457,23 +457,23 @@ abolish_category(Ctg) :- throw(error(instantiation_error, abolish_category(Ctg))). abolish_category(Ctg) :- - \+ lgt_valid_category_id(Ctg), + \+ '$lgt_valid_category_id'(Ctg), throw(error(type_error(category_identifier, Ctg), abolish_category(Ctg))). abolish_category(Ctg) :- - lgt_current_category_(Ctg, Prefix) -> + '$lgt_current_category_'(Ctg, Prefix) -> (category_property(Ctg, (dynamic)) -> - lgt_once(Prefix, Dcl, Def), + '$lgt_once'(Prefix, Dcl, Def), forall( - lgt_call(Def, _, _, _, _, Pred), + '$lgt_call'(Def, _, _, _, _, Pred), (functor(Pred, Functor, Arity), abolish(Functor/Arity))), abolish(Dcl/4), abolish(Dcl/5), abolish(Def/5), abolish(Prefix/2), - retractall(lgt_current_category_(Ctg, _)), - retractall(lgt_implements_protocol_(Ctg, _, _)) + retractall('$lgt_current_category_'(Ctg, _)), + retractall('$lgt_implements_protocol_'(Ctg, _, _)) ; throw(error(permission_error(modify, static_category, Ctg), abolish_category(Ctg)))) ; @@ -488,18 +488,18 @@ abolish_protocol(Ptc) :- throw(error(instantiation_error, abolish_protocol(Ptc))). abolish_protocol(Ptc) :- - \+ lgt_valid_protocol_id(Ptc), + \+ '$lgt_valid_protocol_id'(Ptc), throw(error(type_error(protocol_identifier, Ptc), abolish_protocol(Ptc))). abolish_protocol(Ptc) :- - lgt_current_protocol_(Ptc, Prefix) -> + '$lgt_current_protocol_'(Ptc, Prefix) -> (protocol_property(Ptc, (dynamic)) -> - lgt_once(Prefix, Dcl), + '$lgt_once'(Prefix, Dcl), abolish(Dcl/4), abolish(Dcl/5), abolish(Prefix/1), - retractall(lgt_current_protocol_(Ptc, _)), - retractall(lgt_extends_protocol_(Ptc, _, _)) + retractall('$lgt_current_protocol_'(Ptc, _)), + retractall('$lgt_extends_protocol_'(Ptc, _, _)) ; throw(error(permission_error(modify, static_protocol, Ptc), abolish_protocol(Ptc)))) ; @@ -521,21 +521,21 @@ implements_protocol(Entity, Ptc) :- implements_protocol(Entity, Ptc, Scope) :- nonvar(Entity), - \+ lgt_valid_object_id(Entity), + \+ '$lgt_valid_object_id'(Entity), throw(error(type_error(object_identifier, Entity), implements_protocol(Entity, Ptc, Scope))). implements_protocol(Entity, Ptc, Scope) :- nonvar(Ptc), - \+ lgt_valid_protocol_id(Ptc), + \+ '$lgt_valid_protocol_id'(Ptc), throw(error(type_error(protocol_identifier, Ptc), implements_protocol(Entity, Ptc, Scope))). implements_protocol(Entity, Ptc, Scope) :- nonvar(Scope), - \+ lgt_member(Scope, [(public), protected, private]), + \+ '$lgt_member'(Scope, [(public), protected, private]), throw(error(type_error(scope, Scope), implements_protocol(Entity, Ptc, Scope))). implements_protocol(Entity, Ptc, Scope) :- - lgt_implements_protocol_(Entity, Ptc, Scope). + '$lgt_implements_protocol_'(Entity, Ptc, Scope). @@ -553,21 +553,21 @@ imports_category(Obj, Ctg) :- imports_category(Obj, Ctg, Scope) :- nonvar(Obj), - \+ lgt_valid_object_id(Obj), + \+ '$lgt_valid_object_id'(Obj), throw(error(type_error(object_identifier, Obj), imports_category(Obj, Ctg, Scope))). imports_category(Obj, Ctg, Scope) :- nonvar(Ctg), - \+ lgt_valid_category_id(Ctg), + \+ '$lgt_valid_category_id'(Ctg), throw(error(type_error(category_identifier, Ctg), imports_category(Obj, Ctg, Scope))). imports_category(Obj, Ctg, Scope) :- nonvar(Scope), - \+ lgt_member(Scope, [(public), protected, private]), + \+ '$lgt_member'(Scope, [(public), protected, private]), throw(error(type_error(scope, Scope), imports_category(Obj, Ctg, Scope))). imports_category(Obj, Ctg, Scope) :- - lgt_imports_category_(Obj, Ctg, Scope). + '$lgt_imports_category_'(Obj, Ctg, Scope). @@ -585,21 +585,21 @@ instantiates_class(Obj, Class) :- instantiates_class(Obj, Class, Scope) :- nonvar(Obj), - \+ lgt_valid_object_id(Obj), + \+ '$lgt_valid_object_id'(Obj), throw(error(type_error(object_identifier, Obj), instantiates_class(Obj, Class, Scope))). instantiates_class(Obj, Class, Scope) :- nonvar(Class), - \+ lgt_valid_object_id(Class), + \+ '$lgt_valid_object_id'(Class), throw(error(type_error(object_identifier, Class), instantiates_class(Obj, Class, Scope))). instantiates_class(Obj, Class, Scope) :- nonvar(Scope), - \+ lgt_member(Scope, [(public), protected, private]), + \+ '$lgt_member'(Scope, [(public), protected, private]), throw(error(type_error(scope, Scope), instantiates_class(Obj, Class, Scope))). instantiates_class(Obj, Class, Scope) :- - lgt_instantiates_class_(Obj, Class, Scope). + '$lgt_instantiates_class_'(Obj, Class, Scope). @@ -617,21 +617,21 @@ specializes_class(Class, Superclass) :- specializes_class(Class, Superclass, Scope) :- nonvar(Class), - \+ lgt_valid_object_id(Class), + \+ '$lgt_valid_object_id'(Class), throw(error(type_error(object_identifier, Class), specializes_class(Class, Superclass, Scope))). specializes_class(Class, Superclass, Scope) :- nonvar(Superclass), - \+ lgt_valid_object_id(Superclass), + \+ '$lgt_valid_object_id'(Superclass), throw(error(type_error(object_identifier, Superclass), specializes_class(Class, Superclass, Scope))). specializes_class(Class, Superclass, Scope) :- nonvar(Scope), - \+ lgt_member(Scope, [(public), protected, private]), + \+ '$lgt_member'(Scope, [(public), protected, private]), throw(error(type_error(scope, Scope), specializes_class(Class, Superclass, Scope))). specializes_class(Class, Superclass, Scope) :- - lgt_specializes_class_(Class, Superclass, Scope). + '$lgt_specializes_class_'(Class, Superclass, Scope). @@ -649,21 +649,21 @@ extends_protocol(Ptc1, Ptc2) :- extends_protocol(Ptc1, Ptc2, Scope) :- nonvar(Ptc1), - \+ lgt_valid_protocol_id(Ptc1), + \+ '$lgt_valid_protocol_id'(Ptc1), throw(error(type_error(protocol_identifier, Ptc1), extends_protocol(Ptc1, Ptc2, Scope))). extends_protocol(Ptc1, Ptc2, Scope) :- nonvar(Ptc2), - \+ lgt_valid_protocol_id(Ptc2), + \+ '$lgt_valid_protocol_id'(Ptc2), throw(error(type_error(protocol_identifier, Ptc2), extends_protocol(Ptc1, Ptc2, Scope))). extends_protocol(Ptc1, Ptc2, Scope) :- nonvar(Scope), - \+ lgt_member(Scope, [(public), protected, private]), + \+ '$lgt_member'(Scope, [(public), protected, private]), throw(error(type_error(scope, Scope), extends_protocol(Ptc1, Ptc2, Scope))). extends_protocol(Ptc1, Ptc2, Scope) :- - lgt_extends_protocol_(Ptc1, Ptc2, Scope). + '$lgt_extends_protocol_'(Ptc1, Ptc2, Scope). @@ -681,21 +681,21 @@ extends_object(Prototype, Parent) :- extends_object(Prototype, Parent, Scope) :- nonvar(Prototype), - \+ lgt_valid_object_id(Prototype), + \+ '$lgt_valid_object_id'(Prototype), throw(error(type_error(object_identifier, Prototype), extends_object(Prototype, Parent, Scope))). extends_object(Prototype, Parent, Scope) :- nonvar(Parent), - \+ lgt_valid_object_id(Parent), + \+ '$lgt_valid_object_id'(Parent), throw(error(type_error(object_identifier, Parent), extends_object(Prototype, Parent, Scope))). extends_object(Prototype, Parent, Scope) :- nonvar(Scope), - \+ lgt_member(Scope, [(public), protected, private]), + \+ '$lgt_member'(Scope, [(public), protected, private]), throw(error(type_error(scope, Scope), extends_object(Prototype, Parent, Scope))). extends_object(Prototype, Parent, Scope) :- - lgt_extends_object_(Prototype, Parent, Scope). + '$lgt_extends_object_'(Prototype, Parent, Scope). @@ -709,29 +709,29 @@ current_event(Event, Obj, Msg, Sender, Monitor) :- current_event(Event, Obj, Msg, Sender, Monitor) :- nonvar(Obj), - \+ lgt_valid_object_id(Obj), + \+ '$lgt_valid_object_id'(Obj), throw(error(type_error(object_identifier, Obj), current_event(Event, Obj, Msg, Sender, Monitor))). current_event(Event, Obj, Msg, Sender, Monitor) :- nonvar(Msg), - \+ lgt_callable(Msg), + \+ '$lgt_callable'(Msg), throw(error(type_error(callable, Msg), current_event(Event, Obj, Msg, Sender, Monitor))). current_event(Event, Obj, Msg, Sender, Monitor) :- nonvar(Sender), - \+ lgt_valid_object_id(Sender), + \+ '$lgt_valid_object_id'(Sender), throw(error(type_error(object_identifier, Sender), current_event(Event, Obj, Msg, Sender, Monitor))). current_event(Event, Obj, Msg, Sender, Monitor) :- nonvar(Monitor), - \+ lgt_valid_object_id(Monitor), + \+ '$lgt_valid_object_id'(Monitor), throw(error(type_error(object_identifier, Monitor), current_event(Event, Obj, Msg, Sender, Monitor))). current_event(before, Obj, Msg, Sender, Monitor) :- - lgt_before_(Obj, Msg, Sender, Monitor, _). + '$lgt_before_'(Obj, Msg, Sender, Monitor, _). current_event(after, Obj, Msg, Sender, Monitor) :- - lgt_after_(Obj, Msg, Sender, Monitor, _). + '$lgt_after_'(Obj, Msg, Sender, Monitor, _). @@ -745,17 +745,17 @@ define_events(Event, Obj, Msg, Sender, Monitor) :- define_events(Event, Obj, Msg, Sender, Monitor) :- nonvar(Obj), - \+ lgt_valid_object_id(Obj), + \+ '$lgt_valid_object_id'(Obj), throw(error(type_error(object_identifier, Obj), define_events(Event, Obj, Msg, Sender, Monitor))). define_events(Event, Obj, Msg, Sender, Monitor) :- nonvar(Msg), - \+ lgt_callable(Msg), + \+ '$lgt_callable'(Msg), throw(error(type_error(callable, Msg), define_events(Event, Obj, Msg, Sender, Monitor))). define_events(Event, Obj, Msg, Sender, Monitor) :- nonvar(Sender), - \+ lgt_valid_object_id(Sender), + \+ '$lgt_valid_object_id'(Sender), throw(error(type_error(object_identifier, Sender), define_events(Event, Obj, Msg, Sender, Monitor))). define_events(Event, Obj, Msg, Sender, Monitor) :- @@ -764,31 +764,31 @@ define_events(Event, Obj, Msg, Sender, Monitor) :- define_events(Event, Obj, Msg, Sender, Monitor) :- nonvar(Monitor), - \+ lgt_valid_object_id(Monitor), + \+ '$lgt_valid_object_id'(Monitor), throw(error(type_error(object_identifier, Monitor), define_events(Event, Obj, Msg, Sender, Monitor))). define_events(Event, Obj, Msg, Sender, Monitor) :- var(Event), !, - lgt_current_object_(Monitor, _, _, Def, _), - lgt_call(Def, before(Obj, Msg, Sender), Monitor, Monitor, Monitor, BCall, _), - lgt_call(Def, after(Obj, Msg, Sender), Monitor, Monitor, Monitor, ACall, _), - retractall(lgt_before_(Obj, Msg, Sender, Monitor, _)), - assertz(lgt_before_(Obj, Msg, Sender, Monitor, BCall)), - retractall(lgt_after_(Obj, Msg, Sender, Monitor, _)), - assertz(lgt_after_(Obj, Msg, Sender, Monitor, ACall)). + '$lgt_current_object_'(Monitor, _, _, Def, _), + '$lgt_call'(Def, before(Obj, Msg, Sender), Monitor, Monitor, Monitor, BCall, _), + '$lgt_call'(Def, after(Obj, Msg, Sender), Monitor, Monitor, Monitor, ACall, _), + retractall('$lgt_before_'(Obj, Msg, Sender, Monitor, _)), + assertz('$lgt_before_'(Obj, Msg, Sender, Monitor, BCall)), + retractall('$lgt_after_'(Obj, Msg, Sender, Monitor, _)), + assertz('$lgt_after_'(Obj, Msg, Sender, Monitor, ACall)). define_events(before, Obj, Msg, Sender, Monitor) :- - lgt_current_object_(Monitor, _, _, Def, _), - lgt_call(Def, before(Obj, Msg, Sender), Monitor, Monitor, Monitor, Call, _), - retractall(lgt_before_(Obj, Msg, Sender, Monitor, _)), - assertz(lgt_before_(Obj, Msg, Sender, Monitor, Call)). + '$lgt_current_object_'(Monitor, _, _, Def, _), + '$lgt_call'(Def, before(Obj, Msg, Sender), Monitor, Monitor, Monitor, Call, _), + retractall('$lgt_before_'(Obj, Msg, Sender, Monitor, _)), + assertz('$lgt_before_'(Obj, Msg, Sender, Monitor, Call)). define_events(after, Obj, Msg, Sender, Monitor) :- - lgt_current_object_(Monitor, _, _, Def, _), - lgt_call(Def, after(Obj, Msg, Sender), Monitor, Monitor, Monitor, Call, _), - retractall(lgt_after_(Obj, Msg, Sender, Monitor, _)), - assertz(lgt_after_(Obj, Msg, Sender, Monitor, Call)). + '$lgt_current_object_'(Monitor, _, _, Def, _), + '$lgt_call'(Def, after(Obj, Msg, Sender), Monitor, Monitor, Monitor, Call, _), + retractall('$lgt_after_'(Obj, Msg, Sender, Monitor, _)), + assertz('$lgt_after_'(Obj, Msg, Sender, Monitor, Call)). @@ -802,57 +802,57 @@ abolish_events(Event, Obj, Msg, Sender, Monitor) :- abolish_events(Event, Obj, Msg, Sender, Monitor) :- nonvar(Obj), - \+ lgt_valid_object_id(Obj), + \+ '$lgt_valid_object_id'(Obj), throw(error(type_error(object_identifier, Obj), abolish_events(Event, Obj, Msg, Sender, Monitor))). abolish_events(Event, Obj, Msg, Sender, Monitor) :- nonvar(Msg), - \+ lgt_callable(Msg), + \+ '$lgt_callable'(Msg), throw(error(type_error(callable, Msg), abolish_events(Event, Obj, Msg, Sender, Monitor))). abolish_events(Event, Obj, Msg, Sender, Monitor) :- nonvar(Sender), - \+ lgt_valid_object_id(Sender), + \+ '$lgt_valid_object_id'(Sender), throw(error(type_error(object_identifier, Sender), abolish_events(Event, Obj, Msg, Sender, Monitor))). abolish_events(Event, Obj, Msg, Sender, Monitor) :- nonvar(Monitor), - \+ lgt_valid_object_id(Monitor), + \+ '$lgt_valid_object_id'(Monitor), throw(error(type_error(object_identifier, Monitor), abolish_events(Event, Obj, Msg, Sender, Monitor))). abolish_events(Event, Obj, Msg, Sender, Monitor) :- var(Event), !, - retractall(lgt_before_(Obj, Msg, Sender, Monitor, _)), - retractall(lgt_after_(Obj, Msg, Sender, Monitor, _)). + retractall('$lgt_before_'(Obj, Msg, Sender, Monitor, _)), + retractall('$lgt_after_'(Obj, Msg, Sender, Monitor, _)). abolish_events(before, Obj, Msg, Sender, Monitor) :- - retractall(lgt_before_(Obj, Msg, Sender, Monitor, _)). + retractall('$lgt_before_'(Obj, Msg, Sender, Monitor, _)). abolish_events(after, Obj, Msg, Sender, Monitor) :- - retractall(lgt_after_(Obj, Msg, Sender, Monitor, _)). + retractall('$lgt_after_'(Obj, Msg, Sender, Monitor, _)). % compiling and loading built-in predicates -% lgt_compiler_option(+atom, ?atom) +% '$lgt_compiler_option'(+atom, ?atom) % % gets/check the current value of a compiler option -lgt_compiler_option(Option, Value) :- - lgt_current_compiler_option_(Option, Value2), +'$lgt_compiler_option'(Option, Value) :- + '$lgt_current_compiler_option_'(Option, Value2), !, Value = Value2. -lgt_compiler_option(Option, Value) :- - lgt_flag_(Option, Value2), +'$lgt_compiler_option'(Option, Value) :- + '$lgt_flag_'(Option, Value2), !, Value = Value2. -lgt_compiler_option(Option, Value) :- - lgt_default_flag(Option, Value). +'$lgt_compiler_option'(Option, Value) :- + '$lgt_default_flag'(Option, Value). @@ -874,102 +874,102 @@ logtalk_compile(Entities) :- logtalk_compile(Entities, Options) :- catch( - (lgt_check_compiler_entities(Entities), - lgt_check_compiler_options(Options), - lgt_set_compiler_options(Options), - lgt_compile_entities(Entities)), + ('$lgt_check_compiler_entities'(Entities), + '$lgt_check_compiler_options'(Options), + '$lgt_set_compiler_options'(Options), + '$lgt_compile_entities'(Entities)), Error, throw(error(Error, logtalk_compile(Entities, Options)))). -% lgt_check_compiler_entities(+list) +% '$lgt_check_compiler_entities'(+list) % % check if the entities names are valid and if the corresponding % files exist in the current working directory -lgt_check_compiler_entities(Entities) :- +'$lgt_check_compiler_entities'(Entities) :- var(Entities), throw(instantiation_error). -lgt_check_compiler_entities(Entities) :- - \+ lgt_proper_list(Entities), +'$lgt_check_compiler_entities'(Entities) :- + \+ '$lgt_proper_list'(Entities), throw(type_error(list, Entities)). -lgt_check_compiler_entities(Entities) :- - lgt_check_compiler_entity_list(Entities). +'$lgt_check_compiler_entities'(Entities) :- + '$lgt_check_compiler_entity_list'(Entities). -lgt_check_compiler_entity_list([]). +'$lgt_check_compiler_entity_list'([]). -lgt_check_compiler_entity_list([Entity| Entities]) :- - lgt_check_compiler_entity(Entity), - lgt_check_compiler_entity_list(Entities). +'$lgt_check_compiler_entity_list'([Entity| Entities]) :- + '$lgt_check_compiler_entity'(Entity), + '$lgt_check_compiler_entity_list'(Entities). -lgt_check_compiler_entity(Entity) :- +'$lgt_check_compiler_entity'(Entity) :- \+ atom(Entity), throw(type_error(atom, Entity)). -lgt_check_compiler_entity(Entity) :- - lgt_file_name(logtalk, Entity, File), - \+ lgt_file_exists(File), +'$lgt_check_compiler_entity'(Entity) :- + '$lgt_file_name'(logtalk, Entity, File), + \+ '$lgt_file_exists'(File), throw(existence_error(entity, Entity)). -lgt_check_compiler_entity(_). +'$lgt_check_compiler_entity'(_). -% lgt_check_compiler_options(+list) +% '$lgt_check_compiler_options'(+list) % % check if the compiler options are valid -lgt_check_compiler_options(Options) :- +'$lgt_check_compiler_options'(Options) :- var(Options), throw(instantiation_error). -lgt_check_compiler_options(Options) :- - \+ lgt_proper_list(Options), +'$lgt_check_compiler_options'(Options) :- + \+ '$lgt_proper_list'(Options), throw(type_error(list, Options)). -lgt_check_compiler_options(Options) :- - lgt_check_compiler_option_list(Options). +'$lgt_check_compiler_options'(Options) :- + '$lgt_check_compiler_option_list'(Options). -lgt_check_compiler_option_list([]). +'$lgt_check_compiler_option_list'([]). -lgt_check_compiler_option_list([Option| Options]) :- - lgt_check_compiler_option(Option), - lgt_check_compiler_option_list(Options). +'$lgt_check_compiler_option_list'([Option| Options]) :- + '$lgt_check_compiler_option'(Option), + '$lgt_check_compiler_option_list'(Options). -lgt_check_compiler_option(Option) :- - lgt_valid_compiler_option(Option) -> +'$lgt_check_compiler_option'(Option) :- + '$lgt_valid_compiler_option'(Option) -> true ; throw(type_error(compiler_option, Option)). -% lgt_set_compiler_options(+list) +% '$lgt_set_compiler_options'(+list) % % sets the compiler options -lgt_set_compiler_options(Options) :- - retractall(lgt_current_compiler_option_(_, _)), - lgt_assert_compiler_options(Options). +'$lgt_set_compiler_options'(Options) :- + retractall('$lgt_current_compiler_option_'(_, _)), + '$lgt_assert_compiler_options'(Options). -lgt_assert_compiler_options([]). +'$lgt_assert_compiler_options'([]). -lgt_assert_compiler_options([Option| Options]) :- +'$lgt_assert_compiler_options'([Option| Options]) :- Option =.. [Key, Value], - asserta(lgt_current_compiler_option_(Key, Value)), - lgt_assert_compiler_options(Options). + asserta('$lgt_current_compiler_option_'(Key, Value)), + '$lgt_assert_compiler_options'(Options). @@ -993,10 +993,10 @@ logtalk_load(Entities) :- logtalk_load(Entities, Options) :- catch( - (lgt_check_compiler_entities(Entities), - lgt_check_compiler_options(Options), - lgt_set_compiler_options(Options), - lgt_load_entities(Entities)), + ('$lgt_check_compiler_entities'(Entities), + '$lgt_check_compiler_options'(Options), + '$lgt_set_compiler_options'(Options), + '$lgt_load_entities'(Entities)), Error, throw(error(Error, logtalk_load(Entities, Options)))). @@ -1019,7 +1019,7 @@ logtalk_version(Major, Minor, Patch) :- \+ integer(Patch), throw(error(type_error(integer, Patch), logtalk_version(Major, Minor, Patch))). -logtalk_version(2, 13, 0). +logtalk_version(2, 14, 1). @@ -1042,20 +1042,20 @@ set_logtalk_flag(Flag, Value) :- set_logtalk_flag(Flag, Value) :- atom(Flag), - \+ lgt_valid_flag(Flag), + \+ '$lgt_valid_flag'(Flag), throw(error(domain_error(valid_flag, Flag), set_logtalk_flag(Flag, Value))). set_logtalk_flag(Flag, Value) :- - lgt_read_only_flag(Flag), + '$lgt_read_only_flag'(Flag), throw(error(permission_error(modify, read_only_flag, Flag), set_logtalk_flag(Flag, Value))). set_logtalk_flag(Flag, Value) :- - \+ lgt_valid_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) :- - retractall(lgt_flag_(Flag, _)), - assertz(lgt_flag_(Flag, Value)). + retractall('$lgt_flag_'(Flag, _)), + assertz('$lgt_flag_'(Flag, Value)). @@ -1070,17 +1070,17 @@ current_logtalk_flag(Flag, Value) :- current_logtalk_flag(Flag, Value) :- atom(Flag), - \+ lgt_valid_flag(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). + '$lgt_flag_'(Flag, Value). current_logtalk_flag(Flag, Value) :- - \+ lgt_flag_(Flag, _), - lgt_default_flag(Flag, Value). + \+ '$lgt_flag_'(Flag, _), + '$lgt_default_flag'(Flag, Value). -current_logtalk_flag(version, version(2, 13, 0)). +current_logtalk_flag(version, version(2, 14, 1)). @@ -1094,162 +1094,162 @@ current_logtalk_flag(version, version(2, 13, 0)). % current_predicate/1 built-in method -lgt_current_predicate(Obj, Pred, Sender, _) :- +'$lgt_current_predicate'(Obj, Pred, Sender, _) :- nonvar(Pred), Pred \= _/_, throw(error(type_error(predicate_indicator, Pred), Obj::current_predicate(Pred), Sender)). -lgt_current_predicate(Obj, Functor/Arity, Sender, _) :- +'$lgt_current_predicate'(Obj, Functor/Arity, Sender, _) :- nonvar(Functor), \+ atom(Functor), throw(error(type_error(predicate_indicator, Functor/Arity), Obj::current_predicate(Functor/Arity), Sender)). -lgt_current_predicate(Obj, Functor/Arity, Sender, _) :- +'$lgt_current_predicate'(Obj, Functor/Arity, Sender, _) :- nonvar(Arity), \+ (integer(Arity), Arity >= 0), throw(error(type_error(predicate_indicator, Functor/Arity), Obj::current_predicate(Functor/Arity), Sender)). -lgt_current_predicate(Obj, Functor/Arity, Sender, _) :- - \+ lgt_current_object_(Obj, _, _, _, _), +'$lgt_current_predicate'(Obj, Functor/Arity, Sender, _) :- + \+ '$lgt_current_object_'(Obj, _, _, _, _), throw(error(existence_error(object, Obj), Obj::current_predicate(Functor/Arity), Sender)). -lgt_current_predicate(Obj, Functor/Arity, Sender, Scope) :- +'$lgt_current_predicate'(Obj, Functor/Arity, Sender, Scope) :- nonvar(Functor), nonvar(Arity), !, functor(Pred, Functor, Arity), - lgt_current_object_(Obj, _, Dcl, _, _), - lgt_once(Dcl, Pred, PScope, _, _, SContainer, _), + '$lgt_current_object_'(Obj, _, Dcl, _, _), + '$lgt_once'(Dcl, Pred, PScope, _, _, SContainer, _), once((\+ \+ PScope = Scope; Sender = SContainer)). -lgt_current_predicate(Obj, Functor/Arity, Sender, Scope) :- - lgt_current_object_(Obj, _, Dcl, _, _), +'$lgt_current_predicate'(Obj, Functor/Arity, Sender, Scope) :- + '$lgt_current_object_'(Obj, _, Dcl, _, _), findall( Functor/Arity-(PScope, SContainer), - (lgt_call(Dcl, Pred, PScope, _, _, SContainer, _), + ('$lgt_call'(Dcl, Pred, PScope, _, _, SContainer, _), functor(Pred, Functor, Arity)), Preds), - lgt_cp_filter(Preds, Filtered), - lgt_member(Functor/Arity-(PScope, SContainer), Filtered), + '$lgt_cp_filter'(Preds, Filtered), + '$lgt_member'(Functor/Arity-(PScope, SContainer), Filtered), once((\+ \+ PScope = Scope; Sender = SContainer)). -% lgt_cp_filter(+list, -list) +% '$lgt_cp_filter'(+list, -list) % % removes duplicated and redeclared predicates -lgt_cp_filter([], []). +'$lgt_cp_filter'([], []). -lgt_cp_filter([Data| Rest], [Data| Rest2]) :- - lgt_cp_remove_all(Rest, Data, Aux), - lgt_cp_filter(Aux, Rest2). +'$lgt_cp_filter'([Data| Rest], [Data| Rest2]) :- + '$lgt_cp_remove_all'(Rest, Data, Aux), + '$lgt_cp_filter'(Aux, Rest2). -lgt_cp_remove_all([], _, []). +'$lgt_cp_remove_all'([], _, []). -lgt_cp_remove_all([F/A-_| Rest], F/A-D, List) :- +'$lgt_cp_remove_all'([F/A-_| Rest], F/A-D, List) :- !, - lgt_cp_remove_all(Rest, F/A-D, List). + '$lgt_cp_remove_all'(Rest, F/A-D, List). -lgt_cp_remove_all([Data| Rest], Filter, [Data| Rest2]) :- +'$lgt_cp_remove_all'([Data| Rest], Filter, [Data| Rest2]) :- !, - lgt_cp_remove_all(Rest, Filter, Rest2). + '$lgt_cp_remove_all'(Rest, Filter, Rest2). % predicate_property/2 built-in method -lgt_predicate_property(Obj, Pred, Prop, Sender, _) :- +'$lgt_predicate_property'(Obj, Pred, Prop, Sender, _) :- var(Pred), throw(error(instantiation_error, Obj::predicate_property(Pred, Prop), Sender)). -lgt_predicate_property(Obj, Pred, Prop, Sender, _) :- +'$lgt_predicate_property'(Obj, Pred, Prop, Sender, _) :- nonvar(Prop), - \+ lgt_member(Prop, [(public), protected, private, static, (dynamic), declared_in(_), defined_in(_), metapredicate(_), built_in]), + \+ '$lgt_member'(Prop, [(public), protected, private, static, (dynamic), declared_in(_), defined_in(_), metapredicate(_), built_in]), throw(error(domain_error(predicate_property, Prop), Obj::predicate_property(Pred, Prop), Sender)). -lgt_predicate_property(Obj, Pred, Prop, Sender, _) :- - \+ lgt_callable(Pred), +'$lgt_predicate_property'(Obj, Pred, Prop, Sender, _) :- + \+ '$lgt_callable'(Pred), throw(error(type_error(callable, Pred), Obj::predicate_property(Pred, Prop), Sender)). -lgt_predicate_property(Obj, Pred, Prop, Sender, _) :- - \+ lgt_current_object_(Obj, _, _, _, _), +'$lgt_predicate_property'(Obj, Pred, Prop, Sender, _) :- + \+ '$lgt_current_object_'(Obj, _, _, _, _), throw(error(existence_error(object, Obj), Obj::predicate_property(Pred, Prop), Sender)). -lgt_predicate_property(Obj, Pred, Prop, Sender, Scope) :- - lgt_current_object_(Obj, _, Dcl, Def, _), - lgt_once(Dcl, Pred, PScope, Type, Meta, SContainer, TContainer), +'$lgt_predicate_property'(Obj, Pred, Prop, Sender, Scope) :- + '$lgt_current_object_'(Obj, _, Dcl, Def, _), + '$lgt_once'(Dcl, Pred, PScope, Type, Meta, SContainer, TContainer), !, once((\+ \+ PScope = Scope; Sender = SContainer)), - (lgt_scope(Prop, PScope); + ('$lgt_scope'(Prop, PScope); Prop = Type; Prop = declared_in(TContainer); - lgt_once(Def, Pred, _, _, _, _, DContainer), + '$lgt_once'(Def, Pred, _, _, _, _, DContainer), Prop = defined_in(DContainer); Meta \= no, Prop = metapredicate(Meta)). -lgt_predicate_property(_, Pred, Prop, _, Scope) :- - lgt_built_in_method(Pred, PScope), +'$lgt_predicate_property'(_, Pred, Prop, _, Scope) :- + '$lgt_built_in_method'(Pred, PScope), !, \+ \+ PScope = Scope, - (lgt_scope(Prop, PScope); + ('$lgt_scope'(Prop, PScope); Prop = static; Prop = built_in). -lgt_predicate_property(_, Pred, Prop, _, _) :- - lgt_built_in(Pred), +'$lgt_predicate_property'(_, Pred, Prop, _, _) :- + '$lgt_built_in'(Pred), functor(Pred, Functor, Arity), functor(Meta, Functor, Arity), (Prop = (public); - (lgt_predicate_property(Pred, (dynamic)) -> Prop = (dynamic); Prop = static); + ('$lgt_predicate_property'(Pred, (dynamic)) -> Prop = (dynamic); Prop = static); Prop = built_in; - (lgt_pl_metapredicate(Meta) -> Prop = metapredicate(Meta))). + ('$lgt_pl_metapredicate'(Meta) -> Prop = metapredicate(Meta))). -% lgt_scope(?atom, ?term). +% '$lgt_scope'(?atom, ?term). % % converts between user and system scope terms -lgt_scope(private, p). -lgt_scope(protected, p(p)). -lgt_scope((public), p(p(p))). +'$lgt_scope'(private, p). +'$lgt_scope'(protected, p(p)). +'$lgt_scope'((public), p(p(p))). % abolish/1 built-in method -lgt_abolish(Obj, Pred, Sender, _) :- +'$lgt_abolish'(Obj, Pred, Sender, _) :- var(Pred), throw(error(instantiation_error, Obj::abolish(Pred), Sender)). -lgt_abolish(Obj, Pred, Sender, _) :- +'$lgt_abolish'(Obj, Pred, Sender, _) :- Pred \= _/_, throw(error(type_error(predicate_indicator, Pred), Obj::abolish(predicate), Sender)). -lgt_abolish(Obj, Functor/Arity, Sender, _) :- +'$lgt_abolish'(Obj, Functor/Arity, Sender, _) :- (var(Functor); var(Arity)), throw(error(instantiation_error, Obj::abolish(Functor/Arity), Sender)). -lgt_abolish(Obj, Functor/Arity, Sender, _) :- +'$lgt_abolish'(Obj, Functor/Arity, Sender, _) :- \+ atom(Functor), throw(error(type_error(atom, Functor), Obj::abolish(Functor/Arity), Sender)). -lgt_abolish(Obj, Functor/Arity, Sender, _) :- +'$lgt_abolish'(Obj, Functor/Arity, Sender, _) :- \+ integer(Arity), throw(error(type_error(integer, Arity), Obj::abolish(Functor/Arity), Sender)). -lgt_abolish(Obj, Functor/Arity, Sender, Scope) :- - lgt_current_object_(Obj, Prefix, Dcl, _, _) -> +'$lgt_abolish'(Obj, Functor/Arity, Sender, Scope) :- + '$lgt_current_object_'(Obj, Prefix, Dcl, _, _) -> ((functor(Pred, Functor, Arity), - lgt_once(Dcl, Pred, PScope, Compilation, _, SContainer, _)) -> + '$lgt_once'(Dcl, Pred, PScope, Compilation, _, SContainer, _)) -> ((\+ \+ PScope = Scope; Sender = SContainer) -> (Compilation = (dynamic) -> - lgt_once(Prefix, _, _, _, _, _, DDcl, DDef), - (lgt_once(DDcl, Pred, _, _, _) -> + '$lgt_once'(Prefix, _, _, _, _, _, DDcl, DDef), + ('$lgt_once'(DDcl, Pred, _, _, _) -> Clause =.. [DDcl, Pred, _, _, _], retractall(Clause), - (lgt_once(DDef, Pred, _, _, _, Call) -> + ('$lgt_once'(DDef, Pred, _, _, _, Call) -> functor(Call, CFunctor, CArity), abolish(CFunctor/CArity), Clause2 =.. [DDef, Pred, _, _, _, Call], @@ -1257,7 +1257,7 @@ lgt_abolish(Obj, Functor/Arity, Sender, Scope) :- ; true) ; - (lgt_once(Dcl, Pred, _, _, _) -> + ('$lgt_once'(Dcl, Pred, _, _, _) -> throw(error(permission_error(modify, predicate_declaration, Pred), Obj::abolish(Functor/Arity), Sender)) ; throw(error(existence_error(predicate_declaration, Pred), Obj::abolish(Functor/Arity), Sender)))) @@ -1277,55 +1277,55 @@ lgt_abolish(Obj, Functor/Arity, Sender, Scope) :- % asserta/1 built-in method -lgt_asserta(Obj, Clause, Sender, _) :- +'$lgt_asserta'(Obj, Clause, Sender, _) :- var(Clause), throw(error(instantiation_error, Obj::asserta(Clause), Sender)). -lgt_asserta(Obj, (Head:-Body), Sender, _) :- +'$lgt_asserta'(Obj, (Head:-Body), Sender, _) :- var(Head), throw(error(instantiation_error, Obj::asserta((Head:-Body)), Sender)). -lgt_asserta(Obj, (Head:-Body), Sender, _) :- - \+ lgt_callable(Head), +'$lgt_asserta'(Obj, (Head:-Body), Sender, _) :- + \+ '$lgt_callable'(Head), throw(error(type_error(callable, Head), Obj::asserta((Head:-Body)), Sender)). -lgt_asserta(Obj, (Head:-Body), Sender, _) :- - \+ lgt_callable(Body), +'$lgt_asserta'(Obj, (Head:-Body), Sender, _) :- + \+ '$lgt_callable'(Body), throw(error(type_error(callable, Body), Obj::asserta((Head:-Body)), Sender)). -lgt_asserta(Obj, Clause, Sender, _) :- - \+ lgt_current_object_(Obj, _, _, _, _), +'$lgt_asserta'(Obj, Clause, Sender, _) :- + \+ '$lgt_current_object_'(Obj, _, _, _, _), throw(error(existence_error(object, Obj), Obj::asserta(Clause), Sender)). -lgt_asserta(Obj, (Head:-Body), Sender, Scope) :- +'$lgt_asserta'(Obj, (Head:-Body), Sender, Scope) :- !, - lgt_current_object_(Obj, Prefix, _, _, _), - lgt_once(Prefix, Dcl, Def, _, _, _, DDcl, DDef), - (lgt_once(Dcl, Head, PScope, Type, Meta, SContainer, _) -> + '$lgt_current_object_'(Obj, Prefix, _, _, _), + '$lgt_once'(Prefix, Dcl, Def, _, _, _, DDcl, DDef), + ('$lgt_once'(Dcl, Head, PScope, Type, Meta, SContainer, _) -> true ; - lgt_convert_test_scope(Scope, Scope2), - lgt_assert_ddcl_clause(DDcl, Head, Scope2)), + '$lgt_convert_test_scope'(Scope, Scope2), + '$lgt_assert_ddcl_clause'(DDcl, Head, Scope2)), (Type = (dynamic) -> ((\+ \+ PScope = Scope; Sender = SContainer) -> - ((lgt_once(Def, Head, Sender2, This, Self, Call); lgt_once(DDef, Head, Sender2, This, Self, Call)) -> + (('$lgt_once'(Def, Head, Sender2, This, Self, Call); '$lgt_once'(DDef, Head, Sender2, This, Self, Call)) -> true ; functor(Head, Functor, Arity), - lgt_assert_ddef_clause(Functor, Arity, Prefix, DDef, _), - lgt_once(DDef, Head, Sender2, This, Self, Call)), - lgt_self(Context, Self), - lgt_this(Context, This), - lgt_sender(Context, Sender2), - lgt_prefix(Context, Prefix), + '$lgt_assert_ddef_clause'(Functor, Arity, Prefix, DDef, _), + '$lgt_once'(DDef, Head, Sender2, This, Self, Call)), + '$lgt_self'(Context, Self), + '$lgt_this'(Context, This), + '$lgt_sender'(Context, Sender2), + '$lgt_prefix'(Context, Prefix), (nonvar(Meta) -> Head =.. [_| Args], Meta =.. [_| MArgs], - lgt_extract_metavars(Args, MArgs, Metavars) + '$lgt_extract_metavars'(Args, MArgs, Metavars) ; Metavars = []), - lgt_metavars(Context, Metavars), - asserta((Call:-lgt_tr_body(Body, TBody, Context), call(TBody))) + '$lgt_metavars'(Context, Metavars), + asserta((Call:-'$lgt_tr_body'(Body, TBody, Context), call(TBody))) ; (PScope = p -> throw(error(permission_error(modify, private_predicate, Head), Obj::asserta((Head:-Body)), Sender)) @@ -1334,22 +1334,22 @@ lgt_asserta(Obj, (Head:-Body), Sender, Scope) :- ; throw(error(permission_error(modify, static_predicate, Head), Obj::asserta((Head:-Body)), Sender))). -lgt_asserta(Obj, Head, Sender, Scope) :- - lgt_current_object_(Obj, Prefix, _, _, _), - lgt_once(Prefix, Dcl, Def, _, _, _, DDcl, DDef), - (lgt_once(Dcl, Head, PScope, Type, _, SContainer, _) -> +'$lgt_asserta'(Obj, Head, Sender, Scope) :- + '$lgt_current_object_'(Obj, Prefix, _, _, _), + '$lgt_once'(Prefix, Dcl, Def, _, _, _, DDcl, DDef), + ('$lgt_once'(Dcl, Head, PScope, Type, _, SContainer, _) -> true ; - lgt_convert_test_scope(Scope, Scope2), - lgt_assert_ddcl_clause(DDcl, Head, Scope2)), + '$lgt_convert_test_scope'(Scope, Scope2), + '$lgt_assert_ddcl_clause'(DDcl, Head, Scope2)), (Type = (dynamic) -> ((\+ \+ PScope = Scope; Sender = SContainer) -> - ((lgt_once(Def, Head, _, _, _, Call); lgt_once(DDef, Head, _, _, _, Call)) -> + (('$lgt_once'(Def, Head, _, _, _, Call); '$lgt_once'(DDef, Head, _, _, _, Call)) -> true ; functor(Head, Functor, Arity), - lgt_assert_ddef_clause(Functor, Arity, Prefix, DDef, _), - lgt_once(DDef, Head, _, _, _, Call)), + '$lgt_assert_ddef_clause'(Functor, Arity, Prefix, DDef, _), + '$lgt_once'(DDef, Head, _, _, _, Call)), asserta(Call) ; (PScope = p -> @@ -1363,55 +1363,55 @@ lgt_asserta(Obj, Head, Sender, Scope) :- % assertz/1 built-in method -lgt_assertz(Obj, Clause, Sender, _) :- +'$lgt_assertz'(Obj, Clause, Sender, _) :- var(Clause), throw(error(instantiation_error, Obj::assertz(Clause), Sender)). -lgt_assertz(Obj, (Head:-Body), Sender, _) :- +'$lgt_assertz'(Obj, (Head:-Body), Sender, _) :- var(Head), throw(error(instantiation_error, Obj::assertz((Head:-Body)), Sender)). -lgt_assertz(Obj, (Head:-Body), Sender, _) :- - \+ lgt_callable(Head), +'$lgt_assertz'(Obj, (Head:-Body), Sender, _) :- + \+ '$lgt_callable'(Head), throw(error(type_error(callable, Head), Obj::assertz((Head:-Body)), Sender)). -lgt_assertz(Obj, (Head:-Body), Sender, _) :- - \+ lgt_callable(Body), +'$lgt_assertz'(Obj, (Head:-Body), Sender, _) :- + \+ '$lgt_callable'(Body), throw(error(type_error(callable, Body), Obj::assertz((Head:-Body)), Sender)). -lgt_assertz(Obj, Clause, Sender, _) :- - \+ lgt_current_object_(Obj, _, _, _, _), +'$lgt_assertz'(Obj, Clause, Sender, _) :- + \+ '$lgt_current_object_'(Obj, _, _, _, _), throw(error(existence_error(object, Obj), Obj::assertz(Clause), Sender)). -lgt_assertz(Obj, (Head:-Body), Sender, Scope) :- +'$lgt_assertz'(Obj, (Head:-Body), Sender, Scope) :- !, - lgt_current_object_(Obj, Prefix, _, _, _), - lgt_once(Prefix, Dcl, Def, _, _, _, DDcl, DDef), - (lgt_once(Dcl, Head, PScope, Type, Meta, SContainer, _) -> + '$lgt_current_object_'(Obj, Prefix, _, _, _), + '$lgt_once'(Prefix, Dcl, Def, _, _, _, DDcl, DDef), + ('$lgt_once'(Dcl, Head, PScope, Type, Meta, SContainer, _) -> true ; - lgt_convert_test_scope(Scope, Scope2), - lgt_assert_ddcl_clause(DDcl, Head, Scope2)), + '$lgt_convert_test_scope'(Scope, Scope2), + '$lgt_assert_ddcl_clause'(DDcl, Head, Scope2)), (Type = (dynamic) -> ((\+ \+ PScope = Scope; Sender = SContainer) -> - ((lgt_once(Def, Head, Sender2, This, Self, Call); lgt_once(DDef, Head, Sender2, This, Self, Call)) -> + (('$lgt_once'(Def, Head, Sender2, This, Self, Call); '$lgt_once'(DDef, Head, Sender2, This, Self, Call)) -> true ; functor(Head, Functor, Arity), - lgt_assert_ddef_clause(Functor, Arity, Prefix, DDef, _), - lgt_once(DDef, Head, Sender2, This, Self, Call)), - lgt_self(Context, Self), - lgt_this(Context, This), - lgt_sender(Context, Sender2), - lgt_prefix(Context, Prefix), + '$lgt_assert_ddef_clause'(Functor, Arity, Prefix, DDef, _), + '$lgt_once'(DDef, Head, Sender2, This, Self, Call)), + '$lgt_self'(Context, Self), + '$lgt_this'(Context, This), + '$lgt_sender'(Context, Sender2), + '$lgt_prefix'(Context, Prefix), (nonvar(Meta) -> Head =.. [_| Args], Meta =.. [_| MArgs], - lgt_extract_metavars(Args, MArgs, Metavars) + '$lgt_extract_metavars'(Args, MArgs, Metavars) ; Metavars = []), - lgt_metavars(Context, Metavars), - assertz((Call:-lgt_tr_body(Body, TBody, Context), call(TBody))) + '$lgt_metavars'(Context, Metavars), + assertz((Call:-'$lgt_tr_body'(Body, TBody, Context), call(TBody))) ; (PScope = p -> throw(error(permission_error(modify, private_predicate, Head), Obj::assertz((Head:-Body)), Sender)) @@ -1420,22 +1420,22 @@ lgt_assertz(Obj, (Head:-Body), Sender, Scope) :- ; throw(error(permission_error(modify, static_predicate, Head), Obj::assertz((Head:-Body)), Sender))). -lgt_assertz(Obj, Head, Sender, Scope) :- - lgt_current_object_(Obj, Prefix, _, _, _), - lgt_once(Prefix, Dcl, Def, _, _, _, DDcl, DDef), - (lgt_once(Dcl, Head, PScope, Type, _, SContainer, _) -> +'$lgt_assertz'(Obj, Head, Sender, Scope) :- + '$lgt_current_object_'(Obj, Prefix, _, _, _), + '$lgt_once'(Prefix, Dcl, Def, _, _, _, DDcl, DDef), + ('$lgt_once'(Dcl, Head, PScope, Type, _, SContainer, _) -> true ; - lgt_convert_test_scope(Scope, Scope2), - lgt_assert_ddcl_clause(DDcl, Head, Scope2)), + '$lgt_convert_test_scope'(Scope, Scope2), + '$lgt_assert_ddcl_clause'(DDcl, Head, Scope2)), (Type = (dynamic) -> ((\+ \+ PScope = Scope; Sender = SContainer) -> - ((lgt_once(Def, Head, _, _, _, Call); lgt_once(DDef, Head, _, _, _, Call)) -> + (('$lgt_once'(Def, Head, _, _, _, Call); '$lgt_once'(DDef, Head, _, _, _, Call)) -> true ; functor(Head, Functor, Arity), - lgt_assert_ddef_clause(Functor, Arity, Prefix, DDef, _), - lgt_once(DDef, Head, _, _, _, Call)), + '$lgt_assert_ddef_clause'(Functor, Arity, Prefix, DDef, _), + '$lgt_once'(DDef, Head, _, _, _, Call)), assertz(Call) ; (PScope = p -> @@ -1449,32 +1449,32 @@ lgt_assertz(Obj, Head, Sender, Scope) :- % clause/2 built-in method -lgt_clause(Obj, Head, Body, Sender, _) :- +'$lgt_clause'(Obj, Head, Body, Sender, _) :- var(Head), throw(error(instantiation_error, Obj::clause(Head, Body), Sender)). -lgt_clause(Obj, Head, Body, Sender, _) :- - \+ lgt_callable(Head), +'$lgt_clause'(Obj, Head, Body, Sender, _) :- + \+ '$lgt_callable'(Head), throw(error(type_error(callable, Head), Obj::clause(Head, Body), Sender)). -lgt_clause(Obj, Head, Body, Sender, _) :- +'$lgt_clause'(Obj, Head, Body, Sender, _) :- nonvar(Body), - \+ lgt_callable(Body), + \+ '$lgt_callable'(Body), throw(error(type_error(callable, Body), Obj::clause(Head, Body), Sender)). -lgt_clause(Obj, Head, Body, Sender, _) :- - \+ lgt_current_object_(Obj, _, _, _, _), +'$lgt_clause'(Obj, Head, Body, Sender, _) :- + \+ '$lgt_current_object_'(Obj, _, _, _, _), throw(error(existence_error(object, Obj), Obj::clause(Head, Body), Sender)). -lgt_clause(Obj, Head, Body, Sender, Scope) :- - lgt_current_object_(Obj, Prefix, _, _, _), - lgt_once(Prefix, Dcl, Def, _, _, _, _, DDef), - (lgt_once(Dcl, Head, PScope, Type, _, SContainer, _) -> +'$lgt_clause'(Obj, Head, Body, Sender, Scope) :- + '$lgt_current_object_'(Obj, Prefix, _, _, _), + '$lgt_once'(Prefix, Dcl, Def, _, _, _, _, DDef), + ('$lgt_once'(Dcl, Head, PScope, Type, _, SContainer, _) -> (Type = (dynamic) -> ((\+ \+ PScope = Scope; Sender = SContainer) -> - once((lgt_once(Def, Head, _, _, _, Call); lgt_once(DDef, Head, _, _, _, Call))), + once(('$lgt_once'(Def, Head, _, _, _, Call); '$lgt_once'(DDef, Head, _, _, _, Call))), clause(Call, TBody), - (TBody = (lgt_tr_body(Body, _, _), _) -> + (TBody = ('$lgt_tr_body'(Body, _, _), _) -> true ; Body = TBody) @@ -1492,35 +1492,35 @@ lgt_clause(Obj, Head, Body, Sender, Scope) :- % retract/1 built-in method -lgt_retract(Obj, Clause, Sender, _) :- +'$lgt_retract'(Obj, Clause, Sender, _) :- var(Clause), throw(error(instantiation_error, Obj::retract(Clause), Sender)). -lgt_retract(Obj, (Head:-Body), Sender, _) :- +'$lgt_retract'(Obj, (Head:-Body), Sender, _) :- var(Head), throw(error(instantiation_error, Obj::retract((Head:-Body)), Sender)). -lgt_retract(Obj, (Head:-Body), Sender, _) :- - \+ lgt_callable(Head), +'$lgt_retract'(Obj, (Head:-Body), Sender, _) :- + \+ '$lgt_callable'(Head), throw(error(type_error(callable, Head), Obj::retract((Head:-Body)), Sender)). -lgt_retract(Obj, Clause, Sender, _) :- - \+ lgt_current_object_(Obj, _, _, _, _), +'$lgt_retract'(Obj, Clause, Sender, _) :- + \+ '$lgt_current_object_'(Obj, _, _, _, _), throw(error(existence_error(object, Obj), Obj::retract(Clause), Sender)). -lgt_retract(Obj, (Head:-Body), Sender, Scope) :- +'$lgt_retract'(Obj, (Head:-Body), Sender, Scope) :- !, - lgt_current_object_(Obj, Prefix, _, _, _), - lgt_once(Prefix, Dcl, Def, _, _, _, _, DDef), - (lgt_once(Dcl, Head, PScope, Type, _, SContainer, _) -> + '$lgt_current_object_'(Obj, Prefix, _, _, _), + '$lgt_once'(Prefix, Dcl, Def, _, _, _, _, DDef), + ('$lgt_once'(Dcl, Head, PScope, Type, _, SContainer, _) -> (Type = (dynamic) -> ((\+ \+ PScope = Scope; Sender = SContainer) -> - (lgt_once(Def, Head, _, _, _, Call) -> - retract((Call:-(lgt_tr_body(Body, _, _), _))) + ('$lgt_once'(Def, Head, _, _, _, Call) -> + retract((Call:-('$lgt_tr_body'(Body, _, _), _))) ; - (lgt_once(DDef, Head, _, _, _, Call) -> - retract((Call:-(lgt_tr_body(Body, _, _), _))), - lgt_update_ddef_table(DDef, Call) + ('$lgt_once'(DDef, Head, _, _, _, Call) -> + retract((Call:-('$lgt_tr_body'(Body, _, _), _))), + '$lgt_update_ddef_table'(DDef, Call) ; fail)) ; @@ -1533,18 +1533,18 @@ lgt_retract(Obj, (Head:-Body), Sender, Scope) :- ; throw(error(existence_error(predicate_declaration, Head), Obj::retract((Head:-Body)), Sender))). -lgt_retract(Obj, Head, Sender, Scope) :- - lgt_current_object_(Obj, Prefix, _, _, _), - lgt_once(Prefix, Dcl, Def, _, _, _, _, DDef), - (lgt_once(Dcl, Head, PScope, Type, _, SContainer, _) -> +'$lgt_retract'(Obj, Head, Sender, Scope) :- + '$lgt_current_object_'(Obj, Prefix, _, _, _), + '$lgt_once'(Prefix, Dcl, Def, _, _, _, _, DDef), + ('$lgt_once'(Dcl, Head, PScope, Type, _, SContainer, _) -> (Type = (dynamic) -> ((\+ \+ PScope = Scope; Sender = SContainer) -> - (lgt_once(Def, Head, _, _, _, Call) -> + ('$lgt_once'(Def, Head, _, _, _, Call) -> retract(Call) ; - (lgt_once(DDef, Head, _, _, _, Call) -> + ('$lgt_once'(DDef, Head, _, _, _, Call) -> retract(Call), - lgt_update_ddef_table(DDef, Call) + '$lgt_update_ddef_table'(DDef, Call) ; fail)) ; @@ -1561,30 +1561,30 @@ lgt_retract(Obj, Head, Sender, Scope) :- % retractall/1 built-in method -lgt_retractall(Obj, Head, Sender, _) :- +'$lgt_retractall'(Obj, Head, Sender, _) :- var(Head), throw(error(instantiation_error, Obj::retractall(Head), Sender)). -lgt_retractall(Obj, Head, Sender, _) :- - \+ lgt_callable(Head), +'$lgt_retractall'(Obj, Head, Sender, _) :- + \+ '$lgt_callable'(Head), throw(error(type_error(callable, Head), Obj::retractall(Head), Sender)). -lgt_retractall(Obj, Head, Sender, _) :- - \+ lgt_current_object_(Obj, _, _, _, _), +'$lgt_retractall'(Obj, Head, Sender, _) :- + \+ '$lgt_current_object_'(Obj, _, _, _, _), throw(error(existence_error(object, Obj), Obj::retractall(Head), Sender)). -lgt_retractall(Obj, Head, Sender, Scope) :- - lgt_current_object_(Obj, Prefix, _, _, _), - lgt_once(Prefix, Dcl, Def, _, _, _, _, DDef), - (lgt_once(Dcl, Head, PScope, Type, _, SContainer, _) -> +'$lgt_retractall'(Obj, Head, Sender, Scope) :- + '$lgt_current_object_'(Obj, Prefix, _, _, _), + '$lgt_once'(Prefix, Dcl, Def, _, _, _, _, DDef), + ('$lgt_once'(Dcl, Head, PScope, Type, _, SContainer, _) -> (Type = (dynamic) -> ((\+ \+ PScope = Scope; Sender = SContainer) -> - (lgt_once(Def, Head, _, _, _, Call) -> + ('$lgt_once'(Def, Head, _, _, _, Call) -> retractall(Call) ; - (lgt_once(DDef, Head, _, _, _, Call) -> + ('$lgt_once'(DDef, Head, _, _, _, Call) -> retractall(Call), - lgt_update_ddef_table(DDef, Call) + '$lgt_update_ddef_table'(DDef, Call) ; true)) ; @@ -1608,53 +1608,53 @@ lgt_retractall(Obj, Head, Sender, Scope) :- -% lgt_send_to_self(+object, ?term, +object) +% '$lgt_send_to_self'(+object, ?term, +object) -lgt_send_to_self(Self, Pred, This) :- +'$lgt_send_to_self'(Self, Pred, This) :- nonvar(Pred) -> - lgt_send_to_self_nv(Self, Pred, This) + '$lgt_send_to_self_nv'(Self, Pred, This) ; throw(error(instantiation_error, Self::Pred, This)). -% lgt_send_to_self_nv(+object, +term, +object) +% '$lgt_send_to_self_nv'(+object, +term, +object) -lgt_send_to_self_nv(Self, Pred, This) :- - lgt_current_object_(Self, _, Dcl, Def, _), - (lgt_call(Dcl, Pred, Scope, _, _, SContainer, _) -> +'$lgt_send_to_self_nv'(Self, Pred, This) :- + '$lgt_current_object_'(Self, _, Dcl, Def, _), + ('$lgt_call'(Dcl, Pred, Scope, _, _, SContainer, _) -> ((Scope = p(_); This = SContainer) -> - lgt_once(Def, Pred, This, Self, Self, Call, _), + '$lgt_once'(Def, Pred, This, Self, Self, Call, _), call(Call) ; throw(error(permission_error(access, private_predicate, Pred), Self::Pred, This))) ; - (lgt_built_in(Pred) -> + ('$lgt_built_in'(Pred) -> call(Pred) ; throw(error(existence_error(predicate_declaration, Pred), Self::Pred, This)))). -% lgt_send_to_object(@object, ?term, +object) +% '$lgt_send_to_object'(@object, ?term, +object) -lgt_send_to_object(Obj, Pred, Sender) :- +'$lgt_send_to_object'(Obj, Pred, Sender) :- nonvar(Obj) -> - (lgt_current_object_(Obj, _, Dcl, Def, _) -> + ('$lgt_current_object_'(Obj, _, Dcl, Def, _) -> (nonvar(Pred) -> - (lgt_call(Dcl, Pred, Scope, _, _, _, _) -> + ('$lgt_call'(Dcl, Pred, Scope, _, _, _, _) -> (Scope = p(p(_)) -> - lgt_once(Def, Pred, Sender, Obj, Obj, Call, _), - \+ (lgt_before_(Obj, Pred, Sender, _, BCall), \+ call(BCall)), + '$lgt_once'(Def, Pred, Sender, Obj, Obj, Call, _), + \+ ('$lgt_before_'(Obj, Pred, Sender, _, BCall), \+ call(BCall)), call(Call), - \+ (lgt_after_(Obj, Pred, Sender, _, ACall), \+ call(ACall)) + \+ ('$lgt_after_'(Obj, Pred, Sender, _, ACall), \+ call(ACall)) ; (Scope = p -> throw(error(permission_error(access, private_predicate, Pred), Obj::Pred, Sender)) ; throw(error(permission_error(access, protected_predicate, Pred), Obj::Pred, Sender)))) ; - (lgt_built_in(Pred) -> + ('$lgt_built_in'(Pred) -> call(Pred) ; throw(error(existence_error(predicate_declaration, Pred), Obj::Pred, Sender)))) @@ -1667,23 +1667,23 @@ lgt_send_to_object(Obj, Pred, Sender) :- -% lgt_send_to_object_nv(+object, +term, +object) +% '$lgt_send_to_object_nv'(+object, +term, +object) -lgt_send_to_object_nv(Obj, Pred, Sender) :- - lgt_current_object_(Obj, _, Dcl, Def, _) -> - (lgt_call(Dcl, Pred, Scope, _, _, _, _) -> +'$lgt_send_to_object_nv'(Obj, Pred, Sender) :- + '$lgt_current_object_'(Obj, _, Dcl, Def, _) -> + ('$lgt_call'(Dcl, Pred, Scope, _, _, _, _) -> (Scope = p(p(_)) -> - lgt_once(Def, Pred, Sender, Obj, Obj, Call, _), - \+ (lgt_before_(Obj, Pred, Sender, _, BCall), \+ call(BCall)), + '$lgt_once'(Def, Pred, Sender, Obj, Obj, Call, _), + \+ ('$lgt_before_'(Obj, Pred, Sender, _, BCall), \+ call(BCall)), call(Call), - \+ (lgt_after_(Obj, Pred, Sender, _, ACall), \+ call(ACall)) + \+ ('$lgt_after_'(Obj, Pred, Sender, _, ACall), \+ call(ACall)) ; (Scope = p -> throw(error(permission_error(access, private_predicate, Pred), Obj::Pred, Sender)) ; throw(error(permission_error(access, protected_predicate, Pred), Obj::Pred, Sender)))) ; - (lgt_built_in(Pred) -> + ('$lgt_built_in'(Pred) -> call(Pred) ; throw(error(existence_error(predicate_declaration, Pred), Obj::Pred, Sender)))) @@ -1692,24 +1692,24 @@ lgt_send_to_object_nv(Obj, Pred, Sender) :- -% lgt_send_to_super(+object, ?term, +object, +object) +% '$lgt_send_to_super'(+object, ?term, +object, +object) -lgt_send_to_super(Self, Pred, This, Sender) :- +'$lgt_send_to_super'(Self, Pred, This, Sender) :- nonvar(Pred) -> - lgt_send_to_super_nv(Self, Pred, This, Sender) + '$lgt_send_to_super_nv'(Self, Pred, This, Sender) ; throw(error(instantiation_error, ^^Pred, This)). -% lgt_send_to_super_nv(+object, +term, +object, +object) +% '$lgt_send_to_super_nv'(+object, +term, +object, +object) -lgt_send_to_super_nv(Self, Pred, This, Sender) :- - lgt_current_object_(Self, _, Dcl, _, _), - (lgt_call(Dcl, Pred, Scope, _, _, SContainer, _) -> +'$lgt_send_to_super_nv'(Self, Pred, This, Sender) :- + '$lgt_current_object_'(Self, _, Dcl, _, _), + ('$lgt_call'(Dcl, Pred, Scope, _, _, SContainer, _) -> ((Scope = p(_); This = SContainer) -> - lgt_current_object_(This, _, _, _, Super), - lgt_once(Super, Pred, Sender, This, Self, Call, Container), + '$lgt_current_object_'(This, _, _, _, Super), + '$lgt_once'(Super, Pred, Sender, This, Self, Call, Container), (Container \= This -> call(Call) ; @@ -1717,44 +1717,44 @@ lgt_send_to_super_nv(Self, Pred, This, Sender) :- ; throw(error(permission_error(access, private_predicate, Pred), ^^Pred, This))) ; - (lgt_built_in(Pred) -> + ('$lgt_built_in'(Pred) -> call(Pred) ; throw(error(existence_error(predicate_declaration, Pred), ^^Pred, This)))). -% lgt_metacall_in_object(+object, ?term, +object) +% '$lgt_metacall_in_object'(+object, ?term, +object) % % metacalls in predicate definitions -lgt_metacall_in_object(Obj, Pred, Sender) :- +'$lgt_metacall_in_object'(Obj, Pred, Sender) :- var(Pred) -> throw(error(instantiation_error, Obj::call(Pred), Sender)) ; (Obj = user -> call(Pred) ; - lgt_current_object_(Obj, Prefix, _, _, _), - lgt_prefix(Context, Prefix), - lgt_sender(Context, Sender), - lgt_this(Context, Obj), - lgt_self(Context, Obj), - lgt_tr_body(Pred, Call, Context), + '$lgt_current_object_'(Obj, Prefix, _, _, _), + '$lgt_prefix'(Context, Prefix), + '$lgt_sender'(Context, Sender), + '$lgt_this'(Context, Obj), + '$lgt_self'(Context, Obj), + '$lgt_tr_body'(Pred, Call, Context), call(Call)). -% lgt_call_built_in(+term, +term) +% '$lgt_call_built_in'(+term, +term) % % needed for runtime translation of dynamic clauses -lgt_call_built_in(Pred, Context) :- - lgt_sender(Context, Sender), - lgt_this(Context, This), - lgt_self(Context, Self), - lgt_current_object_(This, _, _, Def, _), - (lgt_call(Def, Pred, Sender, This, Self, Call) -> +'$lgt_call_built_in'(Pred, Context) :- + '$lgt_sender'(Context, Sender), + '$lgt_this'(Context, This), + '$lgt_self'(Context, Self), + '$lgt_current_object_'(This, _, _, Def, _), + ('$lgt_call'(Def, Pred, Sender, This, Self, Call) -> call(Call) ; call(Pred)). @@ -1775,16 +1775,16 @@ lgt_call_built_in(Pred, Context) :- % the following clauses correspond to a virtual % compilation of the pseudo-object user -lgt_current_object_(user, user0_, user0__dcl, user0__def, _). +'$lgt_current_object_'(user, user0_, user0__dcl, user0__def, _). user0_(user0__dcl, user0__def, _, _, _, _, _). user0__dcl(Pred, p(p(p)), no, Type) :- nonvar(Pred), - \+ lgt_built_in(Pred), + \+ '$lgt_built_in'(Pred), functor(Pred, Functor, Arity), current_predicate(Functor/Arity), - (lgt_predicate_property(Pred, (dynamic)) -> + ('$lgt_predicate_property'(Pred, (dynamic)) -> Type = (dynamic) ; Type = static). @@ -1792,10 +1792,10 @@ user0__dcl(Pred, p(p(p)), no, Type) :- user0__dcl(Pred, p(p(p)), no, Type) :- var(Pred), current_predicate(Functor/Arity), - \+ lgt_hidden_functor(Functor), + \+ '$lgt_hidden_functor'(Functor), functor(Pred, Functor, Arity), - \+ lgt_built_in(Pred), - (lgt_predicate_property(Pred, (dynamic)) -> + \+ '$lgt_built_in'(Pred), + ('$lgt_predicate_property'(Pred, (dynamic)) -> Type = (dynamic) ; Type = static). @@ -1809,24 +1809,24 @@ user0__def(Pred, _, _, _, Pred, user). -% lgt_hidden_functor(+atom) +% '$lgt_hidden_functor'(+atom) % % hidden functors include Logtalk pre-processor and runtime internal functors % and those used in the compiled code of objects, protocols, and categories -lgt_hidden_functor(Functor) :- - atom_concat(lgt_, _, Functor). +'$lgt_hidden_functor'(Functor) :- + atom_concat('$lgt_', _, Functor). -lgt_hidden_functor(Functor) :- - lgt_current_category_(_, Prefix), +'$lgt_hidden_functor'(Functor) :- + '$lgt_current_category_'(_, Prefix), atom_concat(Prefix, _, Functor). -lgt_hidden_functor(Functor) :- - lgt_current_object_(_, Prefix, _, _, _), +'$lgt_hidden_functor'(Functor) :- + '$lgt_current_object_'(_, Prefix, _, _, _), atom_concat(Prefix, _, Functor). -lgt_hidden_functor(Functor) :- - lgt_current_protocol_(_, Prefix), +'$lgt_hidden_functor'(Functor) :- + '$lgt_current_protocol_'(_, Prefix), atom_concat(Prefix, _, Functor). @@ -1840,235 +1840,259 @@ lgt_hidden_functor(Functor) :- -% lgt_load_entities(+list) +% '$lgt_load_entities'(+list) % % compiles to disk and then loads to memory a list of entities -lgt_load_entities([]). +'$lgt_load_entities'([]). -lgt_load_entities([Entity| Entities]) :- - lgt_load_entity(Entity), - lgt_load_entities(Entities). +'$lgt_load_entities'([Entity| Entities]) :- + '$lgt_load_entity'(Entity), + '$lgt_load_entities'(Entities). -% lgt_load_entity(+atom) +% '$lgt_load_entity'(+atom) % % compiles to disk and then loads to memory an entity -lgt_load_entity(Entity) :- - lgt_compile_entity(Entity), - (lgt_compiler_option(report, on) -> - lgt_report_redefined_entity(Entity) +'$lgt_load_entity'(Entity) :- + '$lgt_compile_entity'(Entity), + ('$lgt_compiler_option'(report, on) -> + '$lgt_report_redefined_entity'(Entity) ; true), - lgt_file_name(prolog, Entity, File), - lgt_load_prolog_code(File), - (lgt_compiler_option(report, on) -> + '$lgt_file_name'(prolog, Entity, File), + '$lgt_load_prolog_code'(File), + ('$lgt_compiler_option'(report, on) -> write('<<< '), writeq(Entity), write(' loaded'), nl ; true). -% lgt_report_redefined_entity(+atom) +% '$lgt_report_redefined_entity'(+atom) % % prints a warning if an entity of the same name is already loaded -lgt_report_redefined_entity(Entity) :- - lgt_current_object_(Entity, _, _, _, _), +'$lgt_report_redefined_entity'(Entity) :- + '$lgt_current_object_'(Entity, _, _, _, _), !, write('WARNING! redefining '), write(Entity), write(' object'), nl. -lgt_report_redefined_entity(Entity) :- % parametric objects +'$lgt_report_redefined_entity'(Entity) :- % parametric objects atom_codes(Entity, Codes), - lgt_append(Codes1, Codes2, Codes), + '$lgt_append'(Codes1, Codes2, Codes), catch(number_codes(Arity, Codes2), _, fail), atom_codes(Functor, Codes1), functor(Loaded, Functor, Arity), - lgt_current_object_(Loaded, _, _, _, _), + '$lgt_current_object_'(Loaded, _, _, _, _), !, write('WARNING! redefining '), write(Entity), write(' object'), nl. -lgt_report_redefined_entity(Entity) :- - lgt_current_protocol_(Entity, _), +'$lgt_report_redefined_entity'(Entity) :- + '$lgt_current_protocol_'(Entity, _), !, write('WARNING! redefining '), write(Entity), write(' protocol'), nl. -lgt_report_redefined_entity(Entity) :- - lgt_current_category_(Entity, _), +'$lgt_report_redefined_entity'(Entity) :- + '$lgt_current_category_'(Entity, _), !, write('WARNING! redefining '), write(Entity), write(' category'), nl. -lgt_report_redefined_entity(_). +'$lgt_report_redefined_entity'(_). -% lgt_compile_entities(+list) +% '$lgt_compile_entities'(+list) % % compiles to disk a list of entities -lgt_compile_entities([]). +'$lgt_compile_entities'([]). -lgt_compile_entities([Entity| Entities]) :- - lgt_compile_entity(Entity), - lgt_compile_entities(Entities). +'$lgt_compile_entities'([Entity| Entities]) :- + '$lgt_compile_entity'(Entity), + '$lgt_compile_entities'(Entities). -% lgt_compile_entity(+atom) +% '$lgt_compile_entity'(+atom) % % compiles to disk an entity -lgt_compile_entity(Entity) :- - lgt_compiler_option(smart_compilation, on), - \+ lgt_needs_recompilation(Entity), +'$lgt_compile_entity'(Entity) :- + '$lgt_compiler_option'(smart_compilation, on), + \+ '$lgt_needs_recompilation'(Entity), !, - (lgt_compiler_option(report, on) -> + ('$lgt_compiler_option'(report, on) -> nl, write('>>> '), writeq(Entity), write(' is up-to-date'), nl ; true). -lgt_compile_entity(Entity) :- - (lgt_compiler_option(report, on) -> +'$lgt_compile_entity'(Entity) :- + ('$lgt_compiler_option'(report, on) -> nl, write('>>> compiling '), writeq(Entity), nl ; true), - lgt_tr_entity(Entity), - lgt_write_tr_entity(Entity), - lgt_write_entity_doc(Entity), - lgt_report_unknown_entities, - (lgt_compiler_option(report, on) -> + '$lgt_tr_entity'(Entity), + '$lgt_write_tr_entity'(Entity), + '$lgt_write_entity_doc'(Entity), + '$lgt_report_unknown_entities', + ('$lgt_compiler_option'(report, on) -> write('>>> '), writeq(Entity), write(' compiled'), nl ; true). -% lgt_needs_recompilation(+atom) +% '$lgt_needs_recompilation'(+atom) % % source file needs recompilation -lgt_needs_recompilation(Entity) :- - lgt_file_name(prolog, Entity, File), - \+ lgt_file_exists(File). +'$lgt_needs_recompilation'(Entity) :- + '$lgt_file_name'(prolog, Entity, File), + \+ '$lgt_file_exists'(File). -lgt_needs_recompilation(Entity) :- - lgt_file_name(xml, Entity, File), - lgt_compiler_option(xml, on), - \+ lgt_file_exists(File). +'$lgt_needs_recompilation'(Entity) :- + '$lgt_file_name'(xml, Entity, File), + '$lgt_compiler_option'(xml, on), + \+ '$lgt_file_exists'(File). -lgt_needs_recompilation(Entity) :- - lgt_file_name(logtalk, Entity, Source), - lgt_file_name(prolog, Entity, Object), - (lgt_compare_file_mtimes(Result, Source, Object) -> - Result = '>' +'$lgt_needs_recompilation'(Entity) :- + '$lgt_file_name'(logtalk, Entity, Source), + '$lgt_file_name'(prolog, Entity, Object), + ('$lgt_compare_file_mtimes'(Result, Source, Object) -> + Result = (>) ; true). -% lgt_write_tr_entity(+atom) +% '$lgt_write_tr_entity'(+atom) % % writes to disk the entity compiled code -lgt_write_tr_entity(Entity) :- - lgt_file_name(prolog, Entity, File), +'$lgt_write_tr_entity'(Entity) :- + '$lgt_file_name'(prolog, Entity, File), catch( open(File, write, Stream), Error, - lgt_compiler_error_handler(Stream, Error)), + '$lgt_compiler_error_handler'(Stream, Error)), catch( - (lgt_write_directives(Stream), - lgt_write_clauses(Stream), - lgt_write_init_call(Stream)), + ('$lgt_write_directives'(Stream), + '$lgt_write_clauses'(Stream), + '$lgt_write_init_call'(Stream)), Error, - lgt_compiler_error_handler(Stream, Error)), + '$lgt_compiler_error_handler'(Stream, Error)), close(Stream). -% lgt_write_entity_doc(+atom) +% '$lgt_write_entity_doc'(+atom) % % writes to disk the entity documentation in XML format -lgt_write_entity_doc(Entity) :- - lgt_compiler_option(xml, on) -> - lgt_file_name(xml, Entity, File), +'$lgt_write_entity_doc'(Entity) :- + '$lgt_compiler_option'(xml, on) -> + '$lgt_file_name'(xml, Entity, File), catch( open(File, write, Stream), Error, - lgt_compiler_error_handler(Stream, Error)), + '$lgt_compiler_error_handler'(Stream, Error)), catch( - lgt_write_xml_file(Stream), + '$lgt_write_xml_file'(Stream), Error, - lgt_compiler_error_handler(Stream, Error)), + '$lgt_compiler_error_handler'(Stream, Error)), close(Stream) ; true. -% lgt_file_name(+atom, +atom, -atom) +% '$lgt_file_name'(+atom, +atom, -atom) % % constructs a filename given the type of file and the entity name -lgt_file_name(Type, Entity, File) :- - lgt_file_extension(Type, Extension), +'$lgt_file_name'(Type, Entity, File) :- + '$lgt_file_extension'(Type, Extension), atom_concat(Entity, Extension, File). -% lgt_tr_entity(+atom) +% '$lgt_tr_entity'(+atom) % % compiles an entity storing the resulting code in memory -lgt_tr_entity(Entity) :- - lgt_clean_up, - lgt_file_name(logtalk, Entity, File), +'$lgt_tr_entity'(Entity) :- + '$lgt_clean_up', + '$lgt_file_name'(logtalk, Entity, File), catch( open(File, read, Stream), Error, - lgt_compiler_error_handler(Stream, Error)), + '$lgt_compiler_error_handler'(Stream, Error)), catch( - (read_term(Stream, Term, [singletons(Singletons)]), - lgt_report_singletons(Singletons, Term), - lgt_tr_file(Stream, Term)), + (read_term(Stream, Term, [singletons(Singletons1)]), + '$lgt_filter_named_anonymous_vars'(Singletons1, Singletons2), + '$lgt_report_singletons'(Singletons2, Term), + '$lgt_tr_file'(Stream, Term)), Error, - lgt_compiler_error_handler(Stream, Error)), + '$lgt_compiler_error_handler'(Stream, Error)), close(Stream), - lgt_fix_redef_built_ins, - lgt_find_misspelt_calls, - lgt_entity_(Type, _, _, _), - lgt_gen_clauses(Type), - lgt_gen_directives(Type). + '$lgt_fix_redef_built_ins', + '$lgt_find_misspelt_calls', + '$lgt_entity_'(Type, _, _, _), + '$lgt_gen_clauses'(Type), + '$lgt_gen_directives'(Type). -% lgt_tr_file(+stream, +term) +% '$lgt_tr_file'(+stream, +term) -lgt_tr_file(_, end_of_file) :- +'$lgt_tr_file'(_, end_of_file) :- !. -lgt_tr_file(Stream, Term) :- - lgt_tr_term(Term), - read_term(Stream, Next, [singletons(Singletons)]), - lgt_report_singletons(Singletons, Next), - lgt_tr_file(Stream, Next). +'$lgt_tr_file'(Stream, Term) :- + '$lgt_tr_term'(Term), + read_term(Stream, Next, [singletons(Singletons1)]), + '$lgt_filter_named_anonymous_vars'(Singletons1, Singletons2), + '$lgt_report_singletons'(Singletons2, Next), + '$lgt_tr_file'(Stream, Next). -% lgt_report_singletons(+list, +term) +% '$lgt_filter_named_anonymous_vars'(+list, -list) +% +% filter named anonymous varaibles from a singletons list +% if the corresponding compiler option is enabled + +'$lgt_filter_named_anonymous_vars'(List, Result) :- + '$lgt_compiler_option'(named_anonymous_vars, on) -> + '$lgt_filter_named_anonymous_vars'(List, [], Result) + ; + List = Result. + + +'$lgt_filter_named_anonymous_vars'([], Result, Result). + +'$lgt_filter_named_anonymous_vars'([Atom = Var| List], Sofar, Result) :- + sub_atom(Atom, 0, 1, _, '_') -> + '$lgt_filter_named_anonymous_vars'(List, Sofar, Result) + ; + '$lgt_filter_named_anonymous_vars'(List, [Atom = Var| Sofar], Result). + + + +% '$lgt_report_singletons'(+list, +term) % % report the singleton variables found while compiling an entity term -lgt_report_singletons([], _). +'$lgt_report_singletons'([], _). -lgt_report_singletons([Singleton| Singletons], Term) :- - (lgt_compiler_option(singletons, warning), - lgt_compiler_option(report, on)) -> +'$lgt_report_singletons'([Singleton| Singletons], Term) :- + ('$lgt_compiler_option'(singletons, warning), + '$lgt_compiler_option'(report, on)) -> write('WARNING!'), - \+ \+ ( lgt_report_singletons_aux([Singleton| Singletons], Term, Names), + \+ \+ ( '$lgt_report_singletons_aux'([Singleton| Singletons], Term, Names), write(' singleton variables: '), write(Names), nl, (Term = (:- _) -> write(' in directive: ') @@ -2079,96 +2103,96 @@ lgt_report_singletons([Singleton| Singletons], Term) :- true. -lgt_report_singletons_aux([], _, []). +'$lgt_report_singletons_aux'([], _, []). -lgt_report_singletons_aux([Name = Var| Singletons], Term, [Name| Names]) :- +'$lgt_report_singletons_aux'([Name = Var| Singletons], Term, [Name| Names]) :- Name = Var, - lgt_report_singletons_aux(Singletons, Term, Names). + '$lgt_report_singletons_aux'(Singletons, Term, Names). -% lgt_compiler_error_handler(@term, +term) +% '$lgt_compiler_error_handler'(@term, +term) % % close the stream opened for reading the entity % file and report the compilation error found -lgt_compiler_error_handler(Stream, Error) :- +'$lgt_compiler_error_handler'(Stream, Error) :- (nonvar(Stream) -> close(Stream) ; true), - lgt_report_compiler_error(Error), + '$lgt_report_compiler_error'(Error), throw(Error). -% lgt_report_compiler_error(+term) +% '$lgt_report_compiler_error'(+term) % % reports a compilation error -lgt_report_compiler_error(error(Error, directive(Directive))) :- +'$lgt_report_compiler_error'(error(Error, directive(Directive))) :- !, write('ERROR! '), writeq(Error), nl, write(' in directive: '), write((:- Directive)), nl. -lgt_report_compiler_error(error(Error, clause(Clause))) :- +'$lgt_report_compiler_error'(error(Error, clause(Clause))) :- !, write('ERROR! '), writeq(Error), nl, write(' in clause: '), write(Clause), nl. -lgt_report_compiler_error(error(Error, Term)) :- +'$lgt_report_compiler_error'(error(Error, Term)) :- !, write('ERROR! '), writeq(Error), nl, write(' in: '), write(Term), nl. -lgt_report_compiler_error(Error) :- +'$lgt_report_compiler_error'(Error) :- write('ERROR! '), writeq(Error), nl. % clean up all dynamic predicates used during entity compilation -lgt_clean_up :- - retractall(lgt_object_(_, _, _, _, _, _, _, _, _)), - retractall(lgt_protocol_(_, _, _)), - retractall(lgt_category_(_, _, _, _)), - retractall(lgt_implemented_protocol_(_, _, _, _)), - retractall(lgt_imported_category_(_, _, _, _, _)), - retractall(lgt_extended_object_(_, _, _, _, _, _, _, _, _, _)), - retractall(lgt_instantiated_class_(_, _, _, _, _, _, _, _, _, _)), - retractall(lgt_specialized_class_(_, _, _, _, _, _, _, _, _, _)), - retractall(lgt_extended_protocol_(_, _, _, _)), - retractall(lgt_uses_(_)), - retractall(lgt_calls_(_)), - retractall(lgt_info_(_)), - retractall(lgt_info_(_, _)), - retractall(lgt_directive_(_)), - retractall(lgt_public_(_)), - retractall(lgt_protected_(_)), - retractall(lgt_private_(_)), - retractall(lgt_dynamic_(_)), - retractall(lgt_discontiguous_(_)), - retractall(lgt_mode_(_, _)), - retractall(lgt_metapredicate_(_)), - retractall(lgt_entity_functors_(_)), - retractall(lgt_entity_(_, _, _, _)), - retractall(lgt_entity_init_(_)), - retractall(lgt_fentity_init_(_)), - retractall(lgt_entity_comp_mode_(_)), - retractall(lgt_dcl_(_)), - retractall(lgt_ddcl_(_)), - retractall(lgt_def_(_)), - retractall(lgt_ddef_(_)), - retractall(lgt_super_(_)), - retractall(lgt_rclause_(_)), - retractall(lgt_eclause_(_)), - retractall(lgt_feclause_(_)), - retractall(lgt_redefined_built_in_(_, _, _)), - retractall(lgt_defs_pred_(_)), - retractall(lgt_calls_pred_(_)), - retractall(lgt_referenced_object_(_)), - retractall(lgt_referenced_protocol_(_)), - retractall(lgt_referenced_category_(_)). +'$lgt_clean_up' :- + retractall('$lgt_object_'(_, _, _, _, _, _, _, _, _)), + retractall('$lgt_protocol_'(_, _, _)), + retractall('$lgt_category_'(_, _, _, _)), + retractall('$lgt_implemented_protocol_'(_, _, _, _)), + retractall('$lgt_imported_category_'(_, _, _, _, _)), + retractall('$lgt_extended_object_'(_, _, _, _, _, _, _, _, _, _)), + retractall('$lgt_instantiated_class_'(_, _, _, _, _, _, _, _, _, _)), + retractall('$lgt_specialized_class_'(_, _, _, _, _, _, _, _, _, _)), + retractall('$lgt_extended_protocol_'(_, _, _, _)), + retractall('$lgt_uses_'(_)), + retractall('$lgt_calls_'(_)), + retractall('$lgt_info_'(_)), + retractall('$lgt_info_'(_, _)), + retractall('$lgt_directive_'(_)), + retractall('$lgt_public_'(_)), + retractall('$lgt_protected_'(_)), + retractall('$lgt_private_'(_)), + retractall('$lgt_dynamic_'(_)), + retractall('$lgt_discontiguous_'(_)), + retractall('$lgt_mode_'(_, _)), + retractall('$lgt_metapredicate_'(_)), + retractall('$lgt_entity_functors_'(_)), + retractall('$lgt_entity_'(_, _, _, _)), + retractall('$lgt_entity_init_'(_)), + retractall('$lgt_fentity_init_'(_)), + retractall('$lgt_entity_comp_mode_'(_)), + retractall('$lgt_dcl_'(_)), + retractall('$lgt_ddcl_'(_)), + retractall('$lgt_def_'(_)), + retractall('$lgt_ddef_'(_)), + retractall('$lgt_super_'(_)), + retractall('$lgt_rclause_'(_)), + retractall('$lgt_eclause_'(_)), + retractall('$lgt_feclause_'(_)), + retractall('$lgt_redefined_built_in_'(_, _, _)), + retractall('$lgt_defs_pred_'(_)), + retractall('$lgt_calls_pred_'(_)), + retractall('$lgt_referenced_object_'(_)), + retractall('$lgt_referenced_protocol_'(_)), + retractall('$lgt_referenced_category_'(_)). @@ -2177,194 +2201,194 @@ lgt_clean_up :- % % only works on Prolog compilers implementing listing/1 -lgt_dump_all :- - listing(lgt_object_/9), - listing(lgt_protocol_/3), - listing(lgt_category_/4), - listing(lgt_implemented_protocol_/4), - listing(lgt_imported_category_/5), - listing(lgt_extended_object_/10), - listing(lgt_instantiated_class_/10), - listing(lgt_specialized_class_/10), - listing(lgt_extended_protocol_/4), - listing(lgt_uses_/1), - listing(lgt_calls_/1), - listing(lgt_info_/1), - listing(lgt_info_/2), - listing(lgt_directive_/1), - listing(lgt_public_/1), - listing(lgt_protected_/1), - listing(lgt_private_/1), - listing(lgt_dynamic_/1), - listing(lgt_discontiguous_/1), - listing(lgt_mode_/2), - listing(lgt_metapredicate_/1), - listing(lgt_entity_functors_/1), - listing(lgt_entity_/4), - listing(lgt_entity_init_/1), - listing(lgt_fentity_init_/1), - listing(lgt_entity_comp_mode_/1), - listing(lgt_dcl_/1), - listing(lgt_ddcl_/1), - listing(lgt_def_/1), - listing(lgt_ddef_/1), - listing(lgt_super_/1), - listing(lgt_rclause_/1), - listing(lgt_eclause_/1), - listing(lgt_feclause_/1), - listing(lgt_redefined_built_in_/3), - 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). +'$lgt_dump_all' :- + listing('$lgt_object_'/9), + listing('$lgt_protocol_'/3), + listing('$lgt_category_'/4), + listing('$lgt_implemented_protocol_'/4), + listing('$lgt_imported_category_'/5), + listing('$lgt_extended_object_'/10), + listing('$lgt_instantiated_class_'/10), + listing('$lgt_specialized_class_'/10), + listing('$lgt_extended_protocol_'/4), + listing('$lgt_uses_'/1), + listing('$lgt_calls_'/1), + listing('$lgt_info_'/1), + listing('$lgt_info_'/2), + listing('$lgt_directive_'/1), + listing('$lgt_public_'/1), + listing('$lgt_protected_'/1), + listing('$lgt_private_'/1), + listing('$lgt_dynamic_'/1), + listing('$lgt_discontiguous_'/1), + listing('$lgt_mode_'/2), + listing('$lgt_metapredicate_'/1), + listing('$lgt_entity_functors_'/1), + listing('$lgt_entity_'/4), + listing('$lgt_entity_init_'/1), + listing('$lgt_fentity_init_'/1), + listing('$lgt_entity_comp_mode_'/1), + listing('$lgt_dcl_'/1), + listing('$lgt_ddcl_'/1), + listing('$lgt_def_'/1), + listing('$lgt_ddef_'/1), + listing('$lgt_super_'/1), + listing('$lgt_rclause_'/1), + listing('$lgt_eclause_'/1), + listing('$lgt_feclause_'/1), + listing('$lgt_redefined_built_in_'/3), + 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). -% lgt_tr_terms(+list) +% '$lgt_tr_terms'(+list) % % translates a list of entity terms (clauses and/or directives) -lgt_tr_terms([]). +'$lgt_tr_terms'([]). -lgt_tr_terms([Term| Terms]) :- - lgt_tr_term(Term), - lgt_tr_terms(Terms). +'$lgt_tr_terms'([Term| Terms]) :- + '$lgt_tr_term'(Term), + '$lgt_tr_terms'(Terms). -% lgt_tr_term(+term) +% '$lgt_tr_term'(+term) % % translates an entity term (either a clause or a directive) -lgt_tr_term((Head:-Body)) :- +'$lgt_tr_term'((Head:-Body)) :- !, - lgt_tr_clause((Head:-Body)). + '$lgt_tr_clause'((Head:-Body)). -lgt_tr_term((:-Dir)) :- +'$lgt_tr_term'((:-Dir)) :- !, - lgt_tr_directive(Dir). + '$lgt_tr_directive'(Dir). -lgt_tr_term(Fact) :- - lgt_tr_clause(Fact). +'$lgt_tr_term'(Fact) :- + '$lgt_tr_clause'(Fact). -% lgt_tr_directives(+list) +% '$lgt_tr_directives'(+list) % % translates a list of entity directives -lgt_tr_directives([]). +'$lgt_tr_directives'([]). -lgt_tr_directives([Dir| Dirs]) :- - lgt_tr_directive(Dir), - lgt_tr_directives(Dirs). +'$lgt_tr_directives'([Dir| Dirs]) :- + '$lgt_tr_directive'(Dir), + '$lgt_tr_directives'(Dirs). -% lgt_tr_directive(+term) +% '$lgt_tr_directive'(+term) % % translates an entity directive -lgt_tr_directive(Dir) :- +'$lgt_tr_directive'(Dir) :- var(Dir), throw(error(instantiantion_error, directive(Dir))). -lgt_tr_directive(Dir) :- - \+ lgt_entity_(_, _, _, _), % directive occurs before opening entity directive +'$lgt_tr_directive'(Dir) :- + \+ '$lgt_entity_'(_, _, _, _), % directive occurs before opening entity directive functor(Dir, Functor, Arity), - lgt_lgt_closing_directive(Functor/Arity), % opening directive missing/missplet + '$lgt_lgt_closing_directive'(Functor/Arity), % opening directive missing/missplet throw(error(unmatched_directive, directive(Dir))). -lgt_tr_directive(Dir) :- - \+ lgt_entity_(_, _, _, _), % directive occurs before opening entity directive +'$lgt_tr_directive'(Dir) :- + \+ '$lgt_entity_'(_, _, _, _), % directive occurs before opening entity directive functor(Dir, Functor, Arity), - \+ lgt_lgt_opening_directive(Functor/Arity), + \+ '$lgt_lgt_opening_directive'(Functor/Arity), !, - assertz(lgt_directive_(Dir)). + assertz('$lgt_directive_'(Dir)). -lgt_tr_directive(Dir) :- +'$lgt_tr_directive'(Dir) :- functor(Dir, Functor, Arity), - lgt_lgt_directive(Functor/Arity), + '$lgt_lgt_directive'(Functor/Arity), Dir =.. [Functor| Args], catch( - lgt_tr_directive(Functor, Args), + '$lgt_tr_directive'(Functor, Args), Error, throw(error(Error, directive(Dir)))), !. -lgt_tr_directive(Dir) :- +'$lgt_tr_directive'(Dir) :- throw(error(domain_error(directive, Dir), directive(Dir))). -% lgt_tr_directive(+atom, +list) +% '$lgt_tr_directive'(+atom, +list) % % translates a directive and its (possibly empty) list of arguments -lgt_tr_directive(object, [Obj| Rels]) :- - lgt_valid_object_id(Obj) -> - lgt_tr_object_id(Obj), - lgt_tr_object_relations(Rels, Obj) +'$lgt_tr_directive'(object, [Obj| Rels]) :- + '$lgt_valid_object_id'(Obj) -> + '$lgt_tr_object_id'(Obj), + '$lgt_tr_object_relations'(Rels, Obj) ; throw(type_error(object_identifier, Obj)). -lgt_tr_directive(end_object, []) :- - lgt_entity_(object, _, _, _). +'$lgt_tr_directive'(end_object, []) :- + '$lgt_entity_'(object, _, _, _). -lgt_tr_directive(protocol, [Ptc| Rels]) :- - lgt_valid_protocol_id(Ptc) -> - lgt_tr_protocol_id(Ptc), - lgt_tr_protocol_relations(Rels, Ptc) +'$lgt_tr_directive'(protocol, [Ptc| Rels]) :- + '$lgt_valid_protocol_id'(Ptc) -> + '$lgt_tr_protocol_id'(Ptc), + '$lgt_tr_protocol_relations'(Rels, Ptc) ; throw(type_error(protocol_identifier, Ptc)). -lgt_tr_directive(end_protocol, []) :- - lgt_entity_(protocol, _, _, _). +'$lgt_tr_directive'(end_protocol, []) :- + '$lgt_entity_'(protocol, _, _, _). -lgt_tr_directive(category, [Ctg| Rels]) :- - lgt_valid_category_id(Ctg) -> - lgt_tr_category_id(Ctg), - lgt_tr_category_relations(Rels, Ctg) +'$lgt_tr_directive'(category, [Ctg| Rels]) :- + '$lgt_valid_category_id'(Ctg) -> + '$lgt_tr_category_id'(Ctg), + '$lgt_tr_category_relations'(Rels, Ctg) ; throw(type_error(category_identifier, Ctg)). -lgt_tr_directive(end_category, []) :- - lgt_entity_(category, _, _, _). +'$lgt_tr_directive'(end_category, []) :- + '$lgt_entity_'(category, _, _, _). % dynamic entity directive -lgt_tr_directive((dynamic), []) :- - assertz(lgt_entity_comp_mode_((dynamic))). +'$lgt_tr_directive'((dynamic), []) :- + assertz('$lgt_entity_comp_mode_'((dynamic))). -lgt_tr_directive(initialization, [Goal]) :- - lgt_callable(Goal) -> - lgt_entity_(_, Entity, Prefix, _), - lgt_prefix(Context, Prefix), - lgt_metavars(Context, []), - lgt_sender(Context, Entity), - lgt_this(Context, Entity), - lgt_self(Context, Entity), - lgt_tr_body(Goal, TGoal, Context), - assertz(lgt_entity_init_(TGoal)) +'$lgt_tr_directive'(initialization, [Goal]) :- + '$lgt_callable'(Goal) -> + '$lgt_entity_'(_, Entity, Prefix, _), + '$lgt_prefix'(Context, Prefix), + '$lgt_metavars'(Context, []), + '$lgt_sender'(Context, Entity), + '$lgt_this'(Context, Entity), + '$lgt_self'(Context, Entity), + '$lgt_tr_body'(Goal, TGoal, Context), + assertz('$lgt_entity_init_'(TGoal)) ; throw(type_error(callable, Goal)). -lgt_tr_directive(op, [Priority, Specifier, Operators]) :- - lgt_valid_op_priority(Priority) -> - (lgt_valid_op_specifier(Specifier) -> - (lgt_valid_op_names(Operators) -> +'$lgt_tr_directive'(op, [Priority, Specifier, Operators]) :- + '$lgt_valid_op_priority'(Priority) -> + ('$lgt_valid_op_specifier'(Specifier) -> + ('$lgt_valid_op_names'(Operators) -> op(Priority, Specifier, Operators), - assertz(lgt_directive_(op(Priority, Specifier, Operators))) + assertz('$lgt_directive_'(op(Priority, Specifier, Operators))) ; throw(type_error(operator_name, Operators))) ; @@ -2373,40 +2397,40 @@ lgt_tr_directive(op, [Priority, Specifier, Operators]) :- throw(type_error(operator_priority, Priority)). -lgt_tr_directive(uses, Objs) :- - lgt_convert_to_list(Objs, Objs2), +'$lgt_tr_directive'(uses, Objs) :- + '$lgt_convert_to_list'(Objs, Objs2), forall( - lgt_member(Obj, Objs2), - (lgt_valid_object_id(Obj) -> - lgt_add_referenced_object(Obj), - assertz(lgt_uses_(Obj)) + '$lgt_member'(Obj, Objs2), + ('$lgt_valid_object_id'(Obj) -> + '$lgt_add_referenced_object'(Obj), + assertz('$lgt_uses_'(Obj)) ; throw(type_error(object_identifier, Obj)))). -lgt_tr_directive(calls, Ptcs) :- - lgt_convert_to_list(Ptcs, Ptcs2), +'$lgt_tr_directive'(calls, Ptcs) :- + '$lgt_convert_to_list'(Ptcs, Ptcs2), forall( - lgt_member(Ptc, Ptcs2), - (lgt_valid_protocol_id(Ptc) -> - lgt_add_referenced_protocol(Ptc), - assertz(lgt_calls_(Ptc)) + '$lgt_member'(Ptc, Ptcs2), + ('$lgt_valid_protocol_id'(Ptc) -> + '$lgt_add_referenced_protocol'(Ptc), + assertz('$lgt_calls_'(Ptc)) ; throw(type_error(protocol_identifier, Ptc)))). -lgt_tr_directive(info, [List]) :- +'$lgt_tr_directive'(info, [List]) :- !, - (lgt_valid_info_list(List) -> - assertz(lgt_info_(List)) + ('$lgt_valid_info_list'(List) -> + assertz('$lgt_info_'(List)) ; throw(type_error(info_list, List))). -lgt_tr_directive(info, [Pred, List]) :- - lgt_valid_pred_ind(Pred) -> - (lgt_valid_info_list(List) -> - assertz(lgt_info_(Pred, List)) +'$lgt_tr_directive'(info, [Pred, List]) :- + '$lgt_valid_pred_ind'(Pred) -> + ('$lgt_valid_info_list'(List) -> + assertz('$lgt_info_'(Pred, List)) ; throw(type_error(info_list, List))) ; @@ -2414,70 +2438,70 @@ lgt_tr_directive(info, [Pred, List]) :- -lgt_tr_directive((public), Preds) :- - lgt_convert_to_list(Preds, Preds2), +'$lgt_tr_directive'((public), Preds) :- + '$lgt_convert_to_list'(Preds, Preds2), forall( - lgt_member(Pred, Preds2), - (lgt_valid_pred_ind(Pred) -> - assertz(lgt_public_(Pred)) + '$lgt_member'(Pred, Preds2), + ('$lgt_valid_pred_ind'(Pred) -> + assertz('$lgt_public_'(Pred)) ; throw(type_error(predicate_indicator, Pred)))). -lgt_tr_directive(protected, Preds) :- - lgt_convert_to_list(Preds, Preds2), +'$lgt_tr_directive'(protected, Preds) :- + '$lgt_convert_to_list'(Preds, Preds2), forall( - lgt_member(Pred, Preds2), - (lgt_valid_pred_ind(Pred) -> - assertz(lgt_protected_(Pred)) + '$lgt_member'(Pred, Preds2), + ('$lgt_valid_pred_ind'(Pred) -> + assertz('$lgt_protected_'(Pred)) ; throw(type_error(predicate_indicator, Pred)))). -lgt_tr_directive(private, Preds) :- - lgt_convert_to_list(Preds, Preds2), +'$lgt_tr_directive'(private, Preds) :- + '$lgt_convert_to_list'(Preds, Preds2), forall( - lgt_member(Pred, Preds2), - (lgt_valid_pred_ind(Pred) -> - assertz(lgt_private_(Pred)) + '$lgt_member'(Pred, Preds2), + ('$lgt_valid_pred_ind'(Pred) -> + assertz('$lgt_private_'(Pred)) ; throw(type_error(predicate_indicator, Pred)))). -lgt_tr_directive((dynamic), Preds) :- - lgt_convert_to_list(Preds, Preds2), +'$lgt_tr_directive'((dynamic), Preds) :- + '$lgt_convert_to_list'(Preds, Preds2), forall( - lgt_member(Pred, Preds2), - (lgt_valid_pred_ind(Pred) -> - assertz(lgt_dynamic_(Pred)) + '$lgt_member'(Pred, Preds2), + ('$lgt_valid_pred_ind'(Pred) -> + assertz('$lgt_dynamic_'(Pred)) ; throw(type_error(predicate_indicator, Pred)))). -lgt_tr_directive((discontiguous), Preds) :- - lgt_convert_to_list(Preds, Preds2), +'$lgt_tr_directive'((discontiguous), Preds) :- + '$lgt_convert_to_list'(Preds, Preds2), forall( - lgt_member(Pred, Preds2), - (lgt_valid_pred_ind(Pred) -> - assertz(lgt_discontiguous_(Pred)) + '$lgt_member'(Pred, Preds2), + ('$lgt_valid_pred_ind'(Pred) -> + assertz('$lgt_discontiguous_'(Pred)) ; throw(type_error(predicate_indicator, Pred)))). -lgt_tr_directive(metapredicate, Preds) :- - lgt_convert_to_list(Preds, Preds2), +'$lgt_tr_directive'(metapredicate, Preds) :- + '$lgt_convert_to_list'(Preds, Preds2), forall( - lgt_member(Pred, Preds2), - (lgt_valid_metapred_term(Pred) -> - assertz(lgt_metapredicate_(Pred)) + '$lgt_member'(Pred, Preds2), + ('$lgt_valid_metapred_term'(Pred) -> + assertz('$lgt_metapredicate_'(Pred)) ; throw(type_error(metapredicate_term, Pred)))). -lgt_tr_directive((mode), [Mode, Solutions]) :- - lgt_valid_mode_term(Mode) -> - (lgt_valid_number_of_solutions(Solutions) -> - assertz(lgt_mode_(Mode, Solutions)) +'$lgt_tr_directive'((mode), [Mode, Solutions]) :- + '$lgt_valid_mode_term'(Mode) -> + ('$lgt_valid_number_of_solutions'(Solutions) -> + assertz('$lgt_mode_'(Mode, Solutions)) ; throw(type_error(number_of_solutions, Solutions))) ; @@ -2485,185 +2509,185 @@ lgt_tr_directive((mode), [Mode, Solutions]) :- -% lgt_tr_object_relations(+list, +term) +% '$lgt_tr_object_relations'(+list, +term) % % translates the relations of an object with other entities -lgt_tr_object_relations([], _). +'$lgt_tr_object_relations'([], _). -lgt_tr_object_relations([Clause| Clauses], Obj) :- +'$lgt_tr_object_relations'([Clause| Clauses], Obj) :- Clause =.. [Functor| Arguments], - (lgt_tr_object_relation(Functor, Arguments, Obj) -> - lgt_tr_object_relations(Clauses, Obj) + ('$lgt_tr_object_relation'(Functor, Arguments, Obj) -> + '$lgt_tr_object_relations'(Clauses, Obj) ; throw(type_error(relation_clause, Functor))). -% lgt_tr_object_relation(+atom, +list, +term) +% '$lgt_tr_object_relation'(+atom, +list, +term) % % translates a relation between an object (the last argument) with other entities -lgt_tr_object_relation(implements, Ptcs, Obj) :- - lgt_convert_to_list(Ptcs, List), - lgt_tr_implements_protocol(List, Obj). +'$lgt_tr_object_relation'(implements, Ptcs, Obj) :- + '$lgt_convert_to_list'(Ptcs, List), + '$lgt_tr_implements_protocol'(List, Obj). -lgt_tr_object_relation(imports, Ctgs, Obj) :- - lgt_convert_to_list(Ctgs, List), - lgt_tr_imports_category(List, Obj). +'$lgt_tr_object_relation'(imports, Ctgs, Obj) :- + '$lgt_convert_to_list'(Ctgs, List), + '$lgt_tr_imports_category'(List, Obj). -lgt_tr_object_relation(instantiates, Classes, Obj) :- - lgt_convert_to_list(Classes, List), - lgt_tr_instantiates_class(List, Obj). +'$lgt_tr_object_relation'(instantiates, Classes, Obj) :- + '$lgt_convert_to_list'(Classes, List), + '$lgt_tr_instantiates_class'(List, Obj). -lgt_tr_object_relation(specializes, Superclasses, Class) :- - lgt_convert_to_list(Superclasses, List), - lgt_tr_specializes_class(List, Class). +'$lgt_tr_object_relation'(specializes, Superclasses, Class) :- + '$lgt_convert_to_list'(Superclasses, List), + '$lgt_tr_specializes_class'(List, Class). -lgt_tr_object_relation(extends, Parents, Prototype) :- - lgt_convert_to_list(Parents, List), - lgt_tr_extends_object(List, Prototype). +'$lgt_tr_object_relation'(extends, Parents, Prototype) :- + '$lgt_convert_to_list'(Parents, List), + '$lgt_tr_extends_object'(List, Prototype). -% lgt_tr_protocol_relations(+list, +term) +% '$lgt_tr_protocol_relations'(+list, +term) % % translates the relations of a protocol with other entities -lgt_tr_protocol_relations([], _). +'$lgt_tr_protocol_relations'([], _). -lgt_tr_protocol_relations([Clause| Clauses], Obj) :- +'$lgt_tr_protocol_relations'([Clause| Clauses], Obj) :- Clause =.. [Functor| Arguments], - lgt_tr_protocol_relation(Functor, Arguments, Obj), - lgt_tr_protocol_relations(Clauses, Obj). + '$lgt_tr_protocol_relation'(Functor, Arguments, Obj), + '$lgt_tr_protocol_relations'(Clauses, Obj). -% lgt_tr_protocol_relation(+atom, +list, +term) +% '$lgt_tr_protocol_relation'(+atom, +list, +term) % % translates a relation between a protocol (the last argument) with other entities -lgt_tr_protocol_relation(extends, Ptcs, Ptc) :- +'$lgt_tr_protocol_relation'(extends, Ptcs, Ptc) :- !, - lgt_convert_to_list(Ptcs, List), - lgt_tr_extends_protocol(List, Ptc). + '$lgt_convert_to_list'(Ptcs, List), + '$lgt_tr_extends_protocol'(List, Ptc). -lgt_tr_protocol_relation(Unknown, _, _) :- +'$lgt_tr_protocol_relation'(Unknown, _, _) :- throw(directive_error(relation_clause, Unknown)). -% lgt_tr_category_relations(+list, +term) +% '$lgt_tr_category_relations'(+list, +term) % % translates the relations of a category with other entities -lgt_tr_category_relations([], _). +'$lgt_tr_category_relations'([], _). -lgt_tr_category_relations([Clause| Clauses], Obj) :- +'$lgt_tr_category_relations'([Clause| Clauses], Obj) :- Clause =.. [Functor| Arguments], - lgt_tr_category_relation(Functor, Arguments, Obj), - lgt_tr_category_relations(Clauses, Obj). + '$lgt_tr_category_relation'(Functor, Arguments, Obj), + '$lgt_tr_category_relations'(Clauses, Obj). -% lgt_tr_category_relation(+atom, +list, +term) +% '$lgt_tr_category_relation'(+atom, +list, +term) % % translates a relation between a category (the last argument) with other entities -lgt_tr_category_relation(implements, Ptcs, Ctg) :- +'$lgt_tr_category_relation'(implements, Ptcs, Ctg) :- !, - lgt_convert_to_list(Ptcs, List), - lgt_tr_implements_protocol(List, Ctg). + '$lgt_convert_to_list'(Ptcs, List), + '$lgt_tr_implements_protocol'(List, Ctg). -lgt_tr_category_relation(Unknown, _, _) :- +'$lgt_tr_category_relation'(Unknown, _, _) :- throw(directive_error(relation_clause, Unknown)). -% lgt_tr_clauses(+list) +% '$lgt_tr_clauses'(+list) -lgt_tr_clauses([]). +'$lgt_tr_clauses'([]). -lgt_tr_clauses([Clause| Clauses]) :- - lgt_tr_clause(Clause), - lgt_tr_clauses(Clauses). +'$lgt_tr_clauses'([Clause| Clauses]) :- + '$lgt_tr_clause'(Clause), + '$lgt_tr_clauses'(Clauses). -% lgt_tr_clause(+clause) +% '$lgt_tr_clause'(+clause) -lgt_tr_clause(Clause) :- - \+ lgt_entity_(_, _, _, _), % clause occurs before opening entity directive +'$lgt_tr_clause'(Clause) :- + \+ '$lgt_entity_'(_, _, _, _), % clause occurs before opening entity directive !, - assertz(lgt_feclause_(Clause)). + assertz('$lgt_feclause_'(Clause)). -lgt_tr_clause(Clause) :- - lgt_entity_(_, _, Prefix, _), - lgt_prefix(Context, Prefix), +'$lgt_tr_clause'(Clause) :- + '$lgt_entity_'(_, _, Prefix, _), + '$lgt_prefix'(Context, Prefix), catch( - lgt_tr_clause(Clause, TClause, Context), + '$lgt_tr_clause'(Clause, TClause, Context), Error, throw(error(Error, clause(Clause)))), - assertz(lgt_eclause_(TClause)), + assertz('$lgt_eclause_'(TClause)), !. -lgt_tr_clause(Clause) :- +'$lgt_tr_clause'(Clause) :- throw(error(unknown_error, clause(Clause))). -% lgt_tr_clause(+clause, +clause, +term) +% '$lgt_tr_clause'(+clause, +clause, +term) -lgt_tr_clause((Head:-_), _, _) :- - \+ lgt_callable(Head), +'$lgt_tr_clause'((Head:-_), _, _) :- + \+ '$lgt_callable'(Head), throw(type_error(callable, Head)). -lgt_tr_clause((Head:-Body), (THead:-TBody), Context) :- +'$lgt_tr_clause'((Head:-Body), (THead:-TBody), Context) :- !, - lgt_extract_metavars(Head, Metavars), - lgt_metavars(Context, Metavars), - lgt_tr_head(Head, THead, Context), - lgt_tr_body(Body, Body2, Context), - lgt_simplify_body(Body2, TBody). + '$lgt_extract_metavars'(Head, Metavars), + '$lgt_metavars'(Context, Metavars), + '$lgt_tr_head'(Head, THead, Context), + '$lgt_tr_body'(Body, Body2, Context), + '$lgt_simplify_body'(Body2, TBody). -lgt_tr_clause(Fact, _, _) :- - \+ lgt_callable(Fact), +'$lgt_tr_clause'(Fact, _, _) :- + \+ '$lgt_callable'(Fact), throw(type_error(callable, Fact)). -lgt_tr_clause(Fact, TFact, Context) :- - lgt_tr_head(Fact, TFact, Context). +'$lgt_tr_clause'(Fact, TFact, Context) :- + '$lgt_tr_head'(Fact, TFact, Context). -% lgt_tr_head(+callable, -callable, +term) +% '$lgt_tr_head'(+callable, -callable, +term) % % translates an entity clause head % definition of dynamic predicates inside categories -lgt_tr_head(Head, _, _) :- - lgt_entity_(category, _, _, _), +'$lgt_tr_head'(Head, _, _) :- + '$lgt_entity_'(category, _, _, _), functor(Head, Functor, Arity), - lgt_dynamic_(Functor/Arity), + '$lgt_dynamic_'(Functor/Arity), throw(permission_error(define, dynamic_predicate, Functor/Arity)). % redefinition of built-in methods -lgt_tr_head(Head, _, _) :- - lgt_built_in_method(Head, _), +'$lgt_tr_head'(Head, _, _) :- + '$lgt_built_in_method'(Head, _), functor(Head, Functor, Arity), throw(permission_error(modify, built_in_method, Functor/Arity)). % redefinition of Logtalk built-in predicates -lgt_tr_head(Head, _, _) :- - lgt_lgt_built_in(Head), - lgt_compiler_option(lgtredef, warning), - lgt_compiler_option(report, on), - \+ lgt_redefined_built_in_(Head, _, _), % not already reported? +'$lgt_tr_head'(Head, _, _) :- + '$lgt_lgt_built_in'(Head), + '$lgt_compiler_option'(lgtredef, warning), + '$lgt_compiler_option'(report, on), + \+ '$lgt_redefined_built_in_'(Head, _, _), % not already reported? functor(Head, Functor, Arity), write('WARNING! redefining a Logtalk built-in predicate: '), writeq(Functor/Arity), nl, @@ -2672,11 +2696,11 @@ lgt_tr_head(Head, _, _) :- % redefinition of Prolog built-in predicates -lgt_tr_head(Head, _, _) :- - lgt_pl_built_in(Head), - lgt_compiler_option(plredef, warning), - lgt_compiler_option(report, on), - \+ lgt_redefined_built_in_(Head, _, _), % not already reported? +'$lgt_tr_head'(Head, _, _) :- + '$lgt_pl_built_in'(Head), + '$lgt_compiler_option'(plredef, warning), + '$lgt_compiler_option'(report, on), + \+ '$lgt_redefined_built_in_'(Head, _, _), % not already reported? functor(Head, Functor, Arity), write('WARNING! redefining a Prolog built-in predicate: '), writeq(Functor/Arity), nl, @@ -2685,728 +2709,728 @@ lgt_tr_head(Head, _, _) :- % translate the head of a clause of a user defined predicate -lgt_tr_head(Head, THead, Context) :- +'$lgt_tr_head'(Head, THead, Context) :- functor(Head, Functor, Arity), Head =.. [_| Args], - lgt_prefix(Context, EPrefix), - lgt_construct_predicate_functor(EPrefix, Functor, Arity, PPrefix), - ((lgt_dynamic_(Functor/Arity), - \+ lgt_public_(Functor/Arity), - \+ lgt_protected_(Functor/Arity), - \+ lgt_private_(Functor/Arity)) -> - lgt_add_ddef_clause(Functor, Arity, PPrefix, Context) + '$lgt_prefix'(Context, EPrefix), + '$lgt_construct_predicate_functor'(EPrefix, Functor, Arity, PPrefix), + (('$lgt_dynamic_'(Functor/Arity), + \+ '$lgt_public_'(Functor/Arity), + \+ '$lgt_protected_'(Functor/Arity), + \+ '$lgt_private_'(Functor/Arity)) -> + '$lgt_add_ddef_clause'(Functor, Arity, PPrefix, Context) ; - lgt_add_def_clause(Functor, Arity, PPrefix, Context)), - lgt_sender(Context, Sender), - lgt_this(Context, This), - lgt_self(Context, Self), - lgt_append(Args, [Sender, This, Self], Args2), + '$lgt_add_def_clause'(Functor, Arity, PPrefix, Context)), + '$lgt_sender'(Context, Sender), + '$lgt_this'(Context, This), + '$lgt_self'(Context, Self), + '$lgt_append'(Args, [Sender, This, Self], Args2), THead =.. [PPrefix| Args2]. -% lgt_tr_body(+callable, -callable, +term) +% '$lgt_tr_body'(+callable, -callable, +term) % % translates an entity clause body % meta-calls -lgt_tr_body(Pred, TPred, Context) :- +'$lgt_tr_body'(Pred, TPred, Context) :- var(Pred), !, - lgt_metavars(Context, Metavars), - (lgt_member_var(Pred, Metavars) -> - lgt_sender(Context, Sender), - TPred = lgt_metacall_in_object(Sender, Pred, Sender) + '$lgt_metavars'(Context, Metavars), + ('$lgt_member_var'(Pred, Metavars) -> + '$lgt_sender'(Context, Sender), + TPred = '$lgt_metacall_in_object'(Sender, Pred, Sender) ; - lgt_this(Context, This), - TPred = lgt_metacall_in_object(This, Pred, This)). + '$lgt_this'(Context, This), + TPred = '$lgt_metacall_in_object'(This, Pred, This)). % pre-processor bypass (call of external code) -lgt_tr_body({Pred}, Pred, _) :- +'$lgt_tr_body'({Pred}, Pred, _) :- !. % bagof/3 and setof/3 existential quantifiers -lgt_tr_body(Var^Pred, Var^TPred, Context) :- +'$lgt_tr_body'(Var^Pred, Var^TPred, Context) :- !, - lgt_tr_body(Pred, TPred, Context). + '$lgt_tr_body'(Pred, TPred, Context). % control constructs -lgt_tr_body((Pred1, Pred2), (TPred1, TPred2), Context) :- +'$lgt_tr_body'((Pred1, Pred2), (TPred1, TPred2), Context) :- !, - lgt_tr_body(Pred1, TPred1, Context), - lgt_tr_body(Pred2, TPred2, Context). + '$lgt_tr_body'(Pred1, TPred1, Context), + '$lgt_tr_body'(Pred2, TPred2, Context). -lgt_tr_body((Pred1; Pred2), (TPred1; TPred2), Context) :- +'$lgt_tr_body'((Pred1; Pred2), (TPred1; TPred2), Context) :- !, - lgt_tr_body(Pred1, TPred1, Context), - lgt_tr_body(Pred2, TPred2, Context). + '$lgt_tr_body'(Pred1, TPred1, Context), + '$lgt_tr_body'(Pred2, TPred2, Context). -lgt_tr_body((Pred1 -> Pred2), (TPred1 -> TPred2), Context) :- +'$lgt_tr_body'((Pred1 -> Pred2), (TPred1 -> TPred2), Context) :- !, - lgt_tr_body(Pred1, TPred1, Context), - lgt_tr_body(Pred2, TPred2, Context). + '$lgt_tr_body'(Pred1, TPred1, Context), + '$lgt_tr_body'(Pred2, TPred2, Context). -lgt_tr_body(\+ Pred, \+ TPred, Context) :- +'$lgt_tr_body'(\+ Pred, \+ TPred, Context) :- !, - lgt_tr_body(Pred, TPred, Context). + '$lgt_tr_body'(Pred, TPred, Context). -lgt_tr_body(!, !, _) :- +'$lgt_tr_body'(!, !, _) :- !. -lgt_tr_body(true, true, _) :- +'$lgt_tr_body'(true, true, _) :- !. -lgt_tr_body(fail, fail, _) :- +'$lgt_tr_body'(fail, fail, _) :- !. -lgt_tr_body(repeat, repeat, _) :- +'$lgt_tr_body'(repeat, repeat, _) :- !. -lgt_tr_body(call(Pred), TPred, Context) :- +'$lgt_tr_body'(call(Pred), TPred, Context) :- !, - lgt_tr_body(Pred, TPred, Context). + '$lgt_tr_body'(Pred, TPred, Context). -lgt_tr_body(once(Pred), once(TPred), Context) :- +'$lgt_tr_body'(once(Pred), once(TPred), Context) :- !, - lgt_tr_body(Pred, TPred, Context). + '$lgt_tr_body'(Pred, TPred, Context). -lgt_tr_body(catch(Goal, Catcher, Recovery), catch(TGoal, Catcher, TRecovery), Context) :- +'$lgt_tr_body'(catch(Goal, Catcher, Recovery), catch(TGoal, Catcher, TRecovery), Context) :- !, - lgt_tr_body(Goal, TGoal, Context), - lgt_tr_body(Recovery, TRecovery, Context). + '$lgt_tr_body'(Goal, TGoal, Context), + '$lgt_tr_body'(Recovery, TRecovery, Context). -lgt_tr_body(throw(Error), throw(Error), _) :- +'$lgt_tr_body'(throw(Error), throw(Error), _) :- !. % built-in metapredicates -lgt_tr_body(bagof(Term, Pred, List), bagof(Term, TPred, List), Context) :- +'$lgt_tr_body'(bagof(Term, Pred, List), bagof(Term, TPred, List), Context) :- !, - lgt_tr_body(Pred, TPred, Context). + '$lgt_tr_body'(Pred, TPred, Context). -lgt_tr_body(findall(Term, Pred, List), findall(Term, TPred, List), Context) :- +'$lgt_tr_body'(findall(Term, Pred, List), findall(Term, TPred, List), Context) :- !, - lgt_tr_body(Pred, TPred, Context). + '$lgt_tr_body'(Pred, TPred, Context). -lgt_tr_body(forall(Generate, Test), forall(TGenerate, TTest), Context) :- +'$lgt_tr_body'(forall(Generate, Test), forall(TGenerate, TTest), Context) :- !, - lgt_tr_body(Generate, TGenerate, Context), - lgt_tr_body(Test, TTest, Context). + '$lgt_tr_body'(Generate, TGenerate, Context), + '$lgt_tr_body'(Test, TTest, Context). -lgt_tr_body(setof(Term, Pred, List), setof(Term, TPred, List), Context) :- +'$lgt_tr_body'(setof(Term, Pred, List), setof(Term, TPred, List), Context) :- !, - lgt_tr_body(Pred, TPred, Context). + '$lgt_tr_body'(Pred, TPred, Context). % message sending -lgt_tr_body(Obj::Pred, TPred, Context) :- +'$lgt_tr_body'(Obj::Pred, TPred, Context) :- !, - lgt_tr_msg(Obj, Pred, TPred, Context). + '$lgt_tr_msg'(Obj, Pred, TPred, Context). -lgt_tr_body(::Pred, TPred, Context) :- +'$lgt_tr_body'(::Pred, TPred, Context) :- !, - lgt_tr_self_msg(Pred, TPred, Context). + '$lgt_tr_self_msg'(Pred, TPred, Context). -lgt_tr_body(^^Pred, TPred, Context) :- +'$lgt_tr_body'(^^Pred, TPred, Context) :- !, - lgt_tr_super_sending(Pred, TPred, Context). + '$lgt_tr_super_sending'(Pred, TPred, Context). % "reflection" built-in predicates -lgt_tr_body(current_predicate(Pred), lgt_current_predicate(This, Pred, This, _), Context) :- +'$lgt_tr_body'(current_predicate(Pred), '$lgt_current_predicate'(This, Pred, This, _), Context) :- !, - lgt_this(Context, This). + '$lgt_this'(Context, This). -lgt_tr_body(predicate_property(Pred, Property), lgt_predicate_property(This, Pred, Property, This, _), Context) :- +'$lgt_tr_body'(predicate_property(Pred, Property), '$lgt_predicate_property'(This, Pred, Property, This, _), Context) :- !, - lgt_this(Context, This). + '$lgt_this'(Context, This). % database handling built-in predicates -lgt_tr_body(abolish(Pred), lgt_abolish(This, Pred, This, _), Context) :- +'$lgt_tr_body'(abolish(Pred), '$lgt_abolish'(This, Pred, This, _), Context) :- !, - lgt_this(Context, This). + '$lgt_this'(Context, This). -lgt_tr_body(asserta(Pred), lgt_asserta(This, Pred, This, _), Context) :- +'$lgt_tr_body'(asserta(Pred), '$lgt_asserta'(This, Pred, This, _), Context) :- !, - lgt_this(Context, This). + '$lgt_this'(Context, This). -lgt_tr_body(assertz(Pred), lgt_assertz(This, Pred, This, _), Context) :- +'$lgt_tr_body'(assertz(Pred), '$lgt_assertz'(This, Pred, This, _), Context) :- !, - lgt_this(Context, This). + '$lgt_this'(Context, This). -lgt_tr_body(clause(Head, Body), lgt_clause(This, Head, Body, This, _), Context) :- +'$lgt_tr_body'(clause(Head, Body), '$lgt_clause'(This, Head, Body, This, _), Context) :- !, - lgt_this(Context, This). + '$lgt_this'(Context, This). -lgt_tr_body(retract(Pred), lgt_retract(This, Pred, This, _), Context) :- +'$lgt_tr_body'(retract(Pred), '$lgt_retract'(This, Pred, This, _), Context) :- !, - lgt_this(Context, This). + '$lgt_this'(Context, This). -lgt_tr_body(retractall(Pred), lgt_retractall(This, Pred, This, _), Context) :- +'$lgt_tr_body'(retractall(Pred), '$lgt_retractall'(This, Pred, This, _), Context) :- !, - lgt_this(Context, This). + '$lgt_this'(Context, This). % inline methods (translated to a single unification with the corresponding context argument) -lgt_tr_body(sender(Sender), true, Context) :- - lgt_sender(Context, Sender), +'$lgt_tr_body'(sender(Sender), true, Context) :- + '$lgt_sender'(Context, Sender), !. -lgt_tr_body(this(This), true, Context) :- - lgt_this(Context, This), +'$lgt_tr_body'(this(This), true, Context) :- + '$lgt_this'(Context, This), !. -lgt_tr_body(self(Self), true, Context) :- - lgt_self(Context, Self), +'$lgt_tr_body'(self(Self), true, Context) :- + '$lgt_self'(Context, Self), !. % pre-defined methods -lgt_tr_body(parameter(Arg, Value), arg(Arg, This, Value), Context) :- - lgt_this(Context, This), +'$lgt_tr_body'(parameter(Arg, Value), arg(Arg, This, Value), Context) :- + '$lgt_this'(Context, This), !. % Logtalk and Prolog built-in predicates -lgt_tr_body(Pred, _, _) :- - lgt_built_in(Pred), - \+ lgt_iso_def_pred(Pred), - lgt_compiler_option(portability, warning), - lgt_compiler_option(report, on), +'$lgt_tr_body'(Pred, _, _) :- + '$lgt_built_in'(Pred), + \+ '$lgt_iso_def_pred'(Pred), + '$lgt_compiler_option'(portability, warning), + '$lgt_compiler_option'(report, on), functor(Pred, Functor, Arity), write('WARNING! non-ISO defined built-in predicate call: '), writeq(Functor/Arity), nl, fail. -lgt_tr_body(Pred, lgt_call_built_in(Pred, Context), Context) :- - lgt_built_in(Pred), +'$lgt_tr_body'(Pred, '$lgt_call_built_in'(Pred, Context), Context) :- + '$lgt_built_in'(Pred), !. % invalid goal -lgt_tr_body(Pred, _, _) :- - \+ lgt_callable(Pred), +'$lgt_tr_body'(Pred, _, _) :- + \+ '$lgt_callable'(Pred), throw(type_error(callable, Pred)). % goal is a call to a user predicate -lgt_tr_body(Condition, TCondition, Context) :- +'$lgt_tr_body'(Condition, TCondition, Context) :- Condition =.. [Functor|Args], functor(Condition, Functor, Arity), - lgt_prefix(Context, EPrefix), - lgt_construct_predicate_functor(EPrefix, Functor, Arity, PPrefix), - lgt_sender(Context, Sender), - lgt_this(Context, This), - lgt_self(Context, Self), - lgt_append(Args, [Sender, This, Self], Args2), + '$lgt_prefix'(Context, EPrefix), + '$lgt_construct_predicate_functor'(EPrefix, Functor, Arity, PPrefix), + '$lgt_sender'(Context, Sender), + '$lgt_this'(Context, This), + '$lgt_self'(Context, Self), + '$lgt_append'(Args, [Sender, This, Self], Args2), TCondition =.. [PPrefix|Args2], - assertz(lgt_calls_pred_(Functor/Arity)). + assertz('$lgt_calls_pred_'(Functor/Arity)). -% lgt_tr_msg(@object, @term, -term, +term) +% '$lgt_tr_msg'(@object, @term, -term, +term) % % translates the sending of a message to an object % message broadcasting -lgt_tr_msg(Obj, Pred, TPred, Context) :- +'$lgt_tr_msg'(Obj, Pred, TPred, Context) :- nonvar(Obj), (Obj = (_, _); Obj = (_; _)), !, - lgt_tr_msg_broadcasting(Obj, Pred, TPred, Context). + '$lgt_tr_msg_broadcasting'(Obj, Pred, TPred, Context). % invalid object identifier -lgt_tr_msg(Obj, _, _, _) :- +'$lgt_tr_msg'(Obj, _, _, _) :- nonvar(Obj), - \+ lgt_valid_object_id(Obj), + \+ '$lgt_valid_object_id'(Obj), !, throw(type_error(object_identifier, Obj)). % remember the object receiving the message to later check if it's known -lgt_tr_msg(Obj, _, _, _) :- +'$lgt_tr_msg'(Obj, _, _, _) :- nonvar(Obj), - lgt_add_referenced_object(Obj), + '$lgt_add_referenced_object'(Obj), fail. % non-instantiated message: traslation performed at runtime -lgt_tr_msg(Obj, Pred, lgt_send_to_object(Obj, Pred, This), Context) :- +'$lgt_tr_msg'(Obj, Pred, '$lgt_send_to_object'(Obj, Pred, This), Context) :- var(Pred), !, - lgt_this(Context, This). + '$lgt_this'(Context, This). % control constructs -lgt_tr_msg(Obj, (Pred1, Pred2), (TPred1, TPred2), Context) :- +'$lgt_tr_msg'(Obj, (Pred1, Pred2), (TPred1, TPred2), Context) :- !, - lgt_tr_msg(Obj, Pred1, TPred1, Context), - lgt_tr_msg(Obj, Pred2, TPred2, Context). + '$lgt_tr_msg'(Obj, Pred1, TPred1, Context), + '$lgt_tr_msg'(Obj, Pred2, TPred2, Context). -lgt_tr_msg(Obj, (Pred1; Pred2), (TPred1; TPred2), Context) :- +'$lgt_tr_msg'(Obj, (Pred1; Pred2), (TPred1; TPred2), Context) :- !, - lgt_tr_msg(Obj, Pred1, TPred1, Context), - lgt_tr_msg(Obj, Pred2, TPred2, Context). + '$lgt_tr_msg'(Obj, Pred1, TPred1, Context), + '$lgt_tr_msg'(Obj, Pred2, TPred2, Context). -lgt_tr_msg(Obj, (Pred1 -> Pred2), (TPred1 -> TPred2), Context) :- +'$lgt_tr_msg'(Obj, (Pred1 -> Pred2), (TPred1 -> TPred2), Context) :- !, - lgt_tr_msg(Obj, Pred1, TPred1, Context), - lgt_tr_msg(Obj, Pred2, TPred2, Context). + '$lgt_tr_msg'(Obj, Pred1, TPred1, Context), + '$lgt_tr_msg'(Obj, Pred2, TPred2, Context). -lgt_tr_msg(Obj, \+ Pred, \+ TPred, Context) :- +'$lgt_tr_msg'(Obj, \+ Pred, \+ TPred, Context) :- !, - lgt_tr_msg(Obj, Pred, TPred, Context). + '$lgt_tr_msg'(Obj, Pred, TPred, Context). -lgt_tr_msg(_, !, !, _) :- +'$lgt_tr_msg'(_, !, !, _) :- !. -lgt_tr_msg(_, true, true, _) :- +'$lgt_tr_msg'(_, true, true, _) :- !. -lgt_tr_msg(_, fail, fail, _) :- +'$lgt_tr_msg'(_, fail, fail, _) :- !. -lgt_tr_msg(_, repeat, repeat, _) :- +'$lgt_tr_msg'(_, repeat, repeat, _) :- !. -lgt_tr_msg(Obj, call(Pred), TPred, Context) :- +'$lgt_tr_msg'(Obj, call(Pred), TPred, Context) :- !, - lgt_tr_msg(Obj, Pred, TPred, Context). + '$lgt_tr_msg'(Obj, Pred, TPred, Context). -lgt_tr_msg(Obj, once(Pred), once(TPred), Context) :- +'$lgt_tr_msg'(Obj, once(Pred), once(TPred), Context) :- !, - lgt_tr_msg(Obj, Pred, TPred, Context). + '$lgt_tr_msg'(Obj, Pred, TPred, Context). -lgt_tr_msg(Obj, catch(Goal, Catcher, Recovery), catch(TGoal, Catcher, TRecovery), Context) :- +'$lgt_tr_msg'(Obj, catch(Goal, Catcher, Recovery), catch(TGoal, Catcher, TRecovery), Context) :- !, - lgt_tr_msg(Obj, Goal, TGoal, Context), - lgt_tr_msg(Obj, Recovery, TRecovery, Context). + '$lgt_tr_msg'(Obj, Goal, TGoal, Context), + '$lgt_tr_msg'(Obj, Recovery, TRecovery, Context). -lgt_tr_msg(_, throw(Error), throw(Error), _) :- +'$lgt_tr_msg'(_, throw(Error), throw(Error), _) :- !. % built-in metapredicates -lgt_tr_msg(Obj, bagof(Term, Pred, List), bagof(Term, TPred, List), Context) :- +'$lgt_tr_msg'(Obj, bagof(Term, Pred, List), bagof(Term, TPred, List), Context) :- !, - lgt_tr_msg(Obj, Pred, TPred, Context). + '$lgt_tr_msg'(Obj, Pred, TPred, Context). -lgt_tr_msg(Obj, findall(Term, Pred, List), findall(Term, TPred, List), Context) :- +'$lgt_tr_msg'(Obj, findall(Term, Pred, List), findall(Term, TPred, List), Context) :- !, - lgt_tr_msg(Obj, Pred, TPred, Context). + '$lgt_tr_msg'(Obj, Pred, TPred, Context). -lgt_tr_msg(Obj, forall(Generate, Test), forall(TGenerate, TTest), Context) :- +'$lgt_tr_msg'(Obj, forall(Generate, Test), forall(TGenerate, TTest), Context) :- !, - lgt_tr_msg(Obj, Generate, TGenerate, Context), - lgt_tr_msg(Obj, Test, TTest, Context). + '$lgt_tr_msg'(Obj, Generate, TGenerate, Context), + '$lgt_tr_msg'(Obj, Test, TTest, Context). -lgt_tr_msg(Obj, setof(Term, Pred, List), setof(Term, TPred, List), Context) :- +'$lgt_tr_msg'(Obj, setof(Term, Pred, List), setof(Term, TPred, List), Context) :- !, - lgt_tr_msg(Obj, Pred, TPred, Context). + '$lgt_tr_msg'(Obj, Pred, TPred, Context). % "reflection" built-in predicates -lgt_tr_msg(Obj, current_predicate(Pred), lgt_current_predicate(Obj, Pred, This, p(p(p))), Context) :- +'$lgt_tr_msg'(Obj, current_predicate(Pred), '$lgt_current_predicate'(Obj, Pred, This, p(p(p))), Context) :- !, - lgt_this(Context, This). + '$lgt_this'(Context, This). -lgt_tr_msg(Obj, predicate_property(Pred, Property), lgt_predicate_property(Obj, Pred, Property, This, p(p(p))), Context) :- +'$lgt_tr_msg'(Obj, predicate_property(Pred, Property), '$lgt_predicate_property'(Obj, Pred, Property, This, p(p(p))), Context) :- !, - lgt_this(Context, This). + '$lgt_this'(Context, This). % database handling built-in predicates -lgt_tr_msg(Obj, abolish(Pred), lgt_abolish(Obj, Pred, This, p(p(p))), Context) :- +'$lgt_tr_msg'(Obj, abolish(Pred), '$lgt_abolish'(Obj, Pred, This, p(p(p))), Context) :- !, - lgt_this(Context, This). + '$lgt_this'(Context, This). -lgt_tr_msg(Obj, asserta(Pred), lgt_asserta(Obj, Pred, This, p(p(p))), Context) :- +'$lgt_tr_msg'(Obj, asserta(Pred), '$lgt_asserta'(Obj, Pred, This, p(p(p))), Context) :- !, - lgt_this(Context, This). + '$lgt_this'(Context, This). -lgt_tr_msg(Obj, assertz(Pred), lgt_assertz(Obj, Pred, This, p(p(p))), Context) :- +'$lgt_tr_msg'(Obj, assertz(Pred), '$lgt_assertz'(Obj, Pred, This, p(p(p))), Context) :- !, - lgt_this(Context, This). + '$lgt_this'(Context, This). -lgt_tr_msg(Obj, clause(Head, Body), lgt_clause(Obj, Head, Body, This, p(p(p))), Context) :- +'$lgt_tr_msg'(Obj, clause(Head, Body), '$lgt_clause'(Obj, Head, Body, This, p(p(p))), Context) :- !, - lgt_this(Context, This). + '$lgt_this'(Context, This). -lgt_tr_msg(Obj, retract(Pred), lgt_retract(Obj, Pred, This, p(p(p))), Context) :- +'$lgt_tr_msg'(Obj, retract(Pred), '$lgt_retract'(Obj, Pred, This, p(p(p))), Context) :- !, - lgt_this(Context, This). + '$lgt_this'(Context, This). -lgt_tr_msg(Obj, retractall(Pred), lgt_retractall(Obj, Pred, This, p(p(p))), Context) :- +'$lgt_tr_msg'(Obj, retractall(Pred), '$lgt_retractall'(Obj, Pred, This, p(p(p))), Context) :- !, - lgt_this(Context, This). + '$lgt_this'(Context, This). % invalid goal -lgt_tr_msg(_, Pred, _, _) :- - \+ lgt_callable(Pred), +'$lgt_tr_msg'(_, Pred, _, _) :- + \+ '$lgt_callable'(Pred), throw(type_error(callable, Pred)). % message is not a built-in control construct or a call to a built-in % (meta-)predicate: translation performed at runtime -lgt_tr_msg(Obj, Pred, lgt_send_to_object(Obj, Pred, This), Context) :- +'$lgt_tr_msg'(Obj, Pred, '$lgt_send_to_object'(Obj, Pred, This), Context) :- var(Obj), !, - lgt_this(Context, This). + '$lgt_this'(Context, This). -lgt_tr_msg(Obj, Pred, lgt_send_to_object_nv(Obj, Pred, This), Context) :- +'$lgt_tr_msg'(Obj, Pred, '$lgt_send_to_object_nv'(Obj, Pred, This), Context) :- !, - lgt_this(Context, This). + '$lgt_this'(Context, This). -% lgt_tr_self_msg(@term, -term, +term) +% '$lgt_tr_self_msg'(@term, -term, +term) % % translates the sending of a message to self % non-instantiated message: traslation performed at runtime -lgt_tr_self_msg(Pred, lgt_send_to_self(Self, Pred, This), Context) :- +'$lgt_tr_self_msg'(Pred, '$lgt_send_to_self'(Self, Pred, This), Context) :- var(Pred), !, - lgt_this(Context, This), - lgt_self(Context, Self). + '$lgt_this'(Context, This), + '$lgt_self'(Context, Self). % control constructs -lgt_tr_self_msg((Pred1, Pred2), (TPred1, TPred2), Context) :- +'$lgt_tr_self_msg'((Pred1, Pred2), (TPred1, TPred2), Context) :- !, - lgt_tr_self_msg(Pred1, TPred1, Context), - lgt_tr_self_msg(Pred2, TPred2, Context). + '$lgt_tr_self_msg'(Pred1, TPred1, Context), + '$lgt_tr_self_msg'(Pred2, TPred2, Context). -lgt_tr_self_msg(((Pred1; Pred2)), (TPred1; TPred2), Context) :- +'$lgt_tr_self_msg'(((Pred1; Pred2)), (TPred1; TPred2), Context) :- !, - lgt_tr_self_msg(Pred1, TPred1, Context), - lgt_tr_self_msg(Pred2, TPred2, Context). + '$lgt_tr_self_msg'(Pred1, TPred1, Context), + '$lgt_tr_self_msg'(Pred2, TPred2, Context). -lgt_tr_self_msg((Pred1 -> Pred2), (TPred1 -> TPred2), Context) :- +'$lgt_tr_self_msg'((Pred1 -> Pred2), (TPred1 -> TPred2), Context) :- !, - lgt_tr_self_msg(Pred1, TPred1, Context), - lgt_tr_self_msg(Pred2, TPred2, Context). + '$lgt_tr_self_msg'(Pred1, TPred1, Context), + '$lgt_tr_self_msg'(Pred2, TPred2, Context). -lgt_tr_self_msg(\+ Pred, \+ TPred, Context) :- +'$lgt_tr_self_msg'(\+ Pred, \+ TPred, Context) :- !, - lgt_tr_self_msg(Pred, TPred, Context). + '$lgt_tr_self_msg'(Pred, TPred, Context). -lgt_tr_self_msg(!, !, _) :- +'$lgt_tr_self_msg'(!, !, _) :- !. -lgt_tr_self_msg(true, true, _) :- +'$lgt_tr_self_msg'(true, true, _) :- !. -lgt_tr_self_msg(fail, fail, _) :- +'$lgt_tr_self_msg'(fail, fail, _) :- !. -lgt_tr_self_msg(repeat, repeat, _) :- +'$lgt_tr_self_msg'(repeat, repeat, _) :- !. -lgt_tr_self_msg(call(Pred), TPred, Context) :- +'$lgt_tr_self_msg'(call(Pred), TPred, Context) :- !, - lgt_tr_self_msg(Pred, TPred, Context). + '$lgt_tr_self_msg'(Pred, TPred, Context). -lgt_tr_self_msg(once(Pred), once(TPred), Context) :- +'$lgt_tr_self_msg'(once(Pred), once(TPred), Context) :- !, - lgt_tr_self_msg(Pred, TPred, Context). + '$lgt_tr_self_msg'(Pred, TPred, Context). -lgt_tr_self_msg(catch(Goal, Catcher, Recovery), catch(TGoal, Catcher, TRecovery), Context) :- +'$lgt_tr_self_msg'(catch(Goal, Catcher, Recovery), catch(TGoal, Catcher, TRecovery), Context) :- !, - lgt_tr_self_msg(Goal, TGoal, Context), - lgt_tr_self_msg(Recovery, TRecovery, Context). + '$lgt_tr_self_msg'(Goal, TGoal, Context), + '$lgt_tr_self_msg'(Recovery, TRecovery, Context). -lgt_tr_self_msg(throw(Error), throw(Error), _) :- +'$lgt_tr_self_msg'(throw(Error), throw(Error), _) :- !. % built-in metapredicates -lgt_tr_self_msg(bagof(Term, Pred, List), bagof(Term, TPred, List), Context) :- +'$lgt_tr_self_msg'(bagof(Term, Pred, List), bagof(Term, TPred, List), Context) :- !, - lgt_tr_self_msg(Pred, TPred, Context). + '$lgt_tr_self_msg'(Pred, TPred, Context). -lgt_tr_self_msg(findall(Term, Pred, List), findall(Term, TPred, List), Context) :- +'$lgt_tr_self_msg'(findall(Term, Pred, List), findall(Term, TPred, List), Context) :- !, - lgt_tr_self_msg(Pred, TPred, Context). + '$lgt_tr_self_msg'(Pred, TPred, Context). -lgt_tr_self_msg(forall(Generate, Test), forall(TGenerate, TTest), Context) :- +'$lgt_tr_self_msg'(forall(Generate, Test), forall(TGenerate, TTest), Context) :- !, - lgt_tr_self_msg(Generate, TGenerate, Context), - lgt_tr_self_msg(Test, TTest, Context). + '$lgt_tr_self_msg'(Generate, TGenerate, Context), + '$lgt_tr_self_msg'(Test, TTest, Context). -lgt_tr_self_msg(setof(Term, Pred, List), setof(Term, TPred, List), Context) :- +'$lgt_tr_self_msg'(setof(Term, Pred, List), setof(Term, TPred, List), Context) :- !, - lgt_tr_self_msg(Pred, TPred, Context). + '$lgt_tr_self_msg'(Pred, TPred, Context). % "reflection" built-in predicates -lgt_tr_self_msg(current_predicate(Pred), lgt_current_predicate(Self, Pred, This, p(_)), Context) :- +'$lgt_tr_self_msg'(current_predicate(Pred), '$lgt_current_predicate'(Self, Pred, This, p(_)), Context) :- !, - lgt_self(Context, Self), - lgt_this(Context, This). + '$lgt_self'(Context, Self), + '$lgt_this'(Context, This). -lgt_tr_self_msg(predicate_property(Pred, Property), lgt_predicate_property(Self, Pred, Property, This, p(_)), Context) :- +'$lgt_tr_self_msg'(predicate_property(Pred, Property), '$lgt_predicate_property'(Self, Pred, Property, This, p(_)), Context) :- !, - lgt_self(Context, Self), - lgt_this(Context, This). + '$lgt_self'(Context, Self), + '$lgt_this'(Context, This). % database handling built-in predicates -lgt_tr_self_msg(abolish(Pred), lgt_abolish(Self, Pred, This, p(_)), Context) :- +'$lgt_tr_self_msg'(abolish(Pred), '$lgt_abolish'(Self, Pred, This, p(_)), Context) :- !, - lgt_self(Context, Self), - lgt_this(Context, This). + '$lgt_self'(Context, Self), + '$lgt_this'(Context, This). -lgt_tr_self_msg(asserta(Pred), lgt_asserta(Self, Pred, This, p(_)), Context) :- +'$lgt_tr_self_msg'(asserta(Pred), '$lgt_asserta'(Self, Pred, This, p(_)), Context) :- !, - lgt_self(Context, Self), - lgt_this(Context, This). + '$lgt_self'(Context, Self), + '$lgt_this'(Context, This). -lgt_tr_self_msg(assertz(Pred), lgt_assertz(Self, Pred, This, p(_)), Context) :- +'$lgt_tr_self_msg'(assertz(Pred), '$lgt_assertz'(Self, Pred, This, p(_)), Context) :- !, - lgt_self(Context, Self), - lgt_this(Context, This). + '$lgt_self'(Context, Self), + '$lgt_this'(Context, This). -lgt_tr_self_msg(clause(Head, Body), lgt_clause(Self, Head, Body, This, p(_)), Context) :- +'$lgt_tr_self_msg'(clause(Head, Body), '$lgt_clause'(Self, Head, Body, This, p(_)), Context) :- !, - lgt_self(Context, Self), - lgt_this(Context, This). + '$lgt_self'(Context, Self), + '$lgt_this'(Context, This). -lgt_tr_self_msg(retract(Pred), lgt_retract(Self, Pred, This, p(_)), Context) :- +'$lgt_tr_self_msg'(retract(Pred), '$lgt_retract'(Self, Pred, This, p(_)), Context) :- !, - lgt_self(Context, Self), - lgt_this(Context, This). + '$lgt_self'(Context, Self), + '$lgt_this'(Context, This). -lgt_tr_self_msg(retractall(Pred), lgt_retractall(Self, Pred, This, p(_)), Context) :- +'$lgt_tr_self_msg'(retractall(Pred), '$lgt_retractall'(Self, Pred, This, p(_)), Context) :- !, - lgt_self(Context, Self), - lgt_this(Context, This). + '$lgt_self'(Context, Self), + '$lgt_this'(Context, This). % invalid goal -lgt_tr_self_msg(Pred, _, _) :- - \+ lgt_callable(Pred), +'$lgt_tr_self_msg'(Pred, _, _) :- + \+ '$lgt_callable'(Pred), throw(type_error(callable, Pred)). % message is not a built-in control construct or a call to a built-in % (meta-)predicate: translation performed at runtime -lgt_tr_self_msg(Pred, lgt_send_to_self_nv(Self, Pred, This), Context) :- +'$lgt_tr_self_msg'(Pred, '$lgt_send_to_self_nv'(Self, Pred, This), Context) :- !, - lgt_self(Context, Self), - lgt_this(Context, This). + '$lgt_self'(Context, Self), + '$lgt_this'(Context, This). % message broadcasting -lgt_tr_msg_broadcasting((Obj1, Obj2), Pred, (TP1, TP2), Context) :- +'$lgt_tr_msg_broadcasting'((Obj1, Obj2), Pred, (TP1, TP2), Context) :- !, - lgt_tr_msg(Obj1, Pred, TP1, Context), - lgt_tr_msg(Obj2, Pred, TP2, Context). + '$lgt_tr_msg'(Obj1, Pred, TP1, Context), + '$lgt_tr_msg'(Obj2, Pred, TP2, Context). -lgt_tr_msg_broadcasting((Obj1; Obj2), Pred, (TP1; TP2), Context) :- +'$lgt_tr_msg_broadcasting'((Obj1; Obj2), Pred, (TP1; TP2), Context) :- !, - lgt_tr_msg(Obj1, Pred, TP1, Context), - lgt_tr_msg(Obj2, Pred, TP2, Context). + '$lgt_tr_msg'(Obj1, Pred, TP1, Context), + '$lgt_tr_msg'(Obj2, Pred, TP2, Context). -% lgt_tr_super_sending(@term, -term, +term) +% '$lgt_tr_super_sending'(@term, -term, +term) % % translates calling of redefined predicates (super calls) % invalid goal -lgt_tr_super_sending(Pred, _, _) :- +'$lgt_tr_super_sending'(Pred, _, _) :- nonvar(Pred), - \+ lgt_callable(Pred), + \+ '$lgt_callable'(Pred), throw(type_error(callable, Pred)). % translation performed at runtime -lgt_tr_super_sending(Pred, lgt_send_to_super(Self, Pred, This, Sender), Context) :- +'$lgt_tr_super_sending'(Pred, '$lgt_send_to_super'(Self, Pred, This, Sender), Context) :- var(Pred), !, - lgt_self(Context, Self), - lgt_this(Context, This), - lgt_sender(Context, Sender). + '$lgt_self'(Context, Self), + '$lgt_this'(Context, This), + '$lgt_sender'(Context, Sender). -lgt_tr_super_sending(Pred, lgt_send_to_super_nv(Self, Pred, This, Sender), Context) :- - lgt_self(Context, Self), - lgt_this(Context, This), - lgt_sender(Context, Sender). +'$lgt_tr_super_sending'(Pred, '$lgt_send_to_super_nv'(Self, Pred, This, Sender), Context) :- + '$lgt_self'(Context, Self), + '$lgt_this'(Context, This), + '$lgt_sender'(Context, Sender). -% lgt_extract_metavars(+callable, -list) +% '$lgt_extract_metavars'(+callable, -list) % % constructs a list of all variables that occur % in a position corresponding to a meta-argument -lgt_extract_metavars(Pred, Metavars) :- +'$lgt_extract_metavars'(Pred, Metavars) :- functor(Pred, Functor, Arity), functor(Meta, Functor, Arity), - (lgt_metapredicate_(Meta) -> + ('$lgt_metapredicate_'(Meta) -> Pred =.. [_| Args], Meta =.. [_| MArgs], - lgt_extract_metavars(Args, MArgs, Metavars) + '$lgt_extract_metavars'(Args, MArgs, Metavars) ; Metavars = []). -% lgt_extract_metavars(+list, +list, -list) +% '$lgt_extract_metavars'(+list, +list, -list) -lgt_extract_metavars([], [], []). +'$lgt_extract_metavars'([], [], []). -lgt_extract_metavars([Var| Args], [MArg| MArgs], [Var| Metavars]) :- +'$lgt_extract_metavars'([Var| Args], [MArg| MArgs], [Var| Metavars]) :- var(Var), MArg = (::), !, - lgt_extract_metavars(Args, MArgs, Metavars). + '$lgt_extract_metavars'(Args, MArgs, Metavars). -lgt_extract_metavars([_| Args], [_| MArgs], Metavars) :- - lgt_extract_metavars(Args, MArgs, Metavars). +'$lgt_extract_metavars'([_| Args], [_| MArgs], Metavars) :- + '$lgt_extract_metavars'(Args, MArgs, Metavars). -% lgt_simplify_body(+callable, -callable) +% '$lgt_simplify_body'(+callable, -callable) % % remove redundant calls to true/0 from a translated clause body -lgt_simplify_body((A;B), (SA;SB)) :- +'$lgt_simplify_body'((A;B), (SA;SB)) :- !, - lgt_simplify_body(A, SA), - lgt_simplify_body(B, SB). + '$lgt_simplify_body'(A, SA), + '$lgt_simplify_body'(B, SB). -lgt_simplify_body((A->B), (SA->SB)) :- +'$lgt_simplify_body'((A->B), (SA->SB)) :- !, - lgt_simplify_body(A, SA), - lgt_simplify_body(B, SB). + '$lgt_simplify_body'(A, SA), + '$lgt_simplify_body'(B, SB). -lgt_simplify_body((true, B), SB) :- +'$lgt_simplify_body'((true, B), SB) :- !, - lgt_simplify_body(B, SB). + '$lgt_simplify_body'(B, SB). -lgt_simplify_body((B, true), SB) :- +'$lgt_simplify_body'((B, true), SB) :- !, - lgt_simplify_body(B, SB). + '$lgt_simplify_body'(B, SB). -lgt_simplify_body((A, B), (SA, SB)) :- +'$lgt_simplify_body'((A, B), (SA, SB)) :- !, - lgt_simplify_body(A, SA), - lgt_simplify_body(B, SB). + '$lgt_simplify_body'(A, SA), + '$lgt_simplify_body'(B, SB). -lgt_simplify_body(B, B). +'$lgt_simplify_body'(B, B). -% lgt_tr_object_id(+object_identifier) +% '$lgt_tr_object_id'(+object_identifier) % % from the object identifier construct the set of % functor prefixes used in the compiled code clauses -lgt_tr_object_id(Obj) :- - lgt_add_referenced_object(Obj), - lgt_construct_object_functors(Obj, Prefix, Dcl, Def, Super, IDcl, IDef, DDcl, DDef), - assertz(lgt_object_(Obj, Prefix, Dcl, Def, Super, IDcl, IDef, DDcl, DDef)), +'$lgt_tr_object_id'(Obj) :- + '$lgt_add_referenced_object'(Obj), + '$lgt_construct_object_functors'(Obj, Prefix, Dcl, Def, Super, IDcl, IDef, DDcl, DDef), + assertz('$lgt_object_'(Obj, Prefix, Dcl, Def, Super, IDcl, IDef, DDcl, DDef)), Term =.. [Prefix, Dcl, Def, Super, IDcl, IDef, DDcl, DDef], - assertz(lgt_entity_functors_(Term)), - assertz(lgt_rclause_(lgt_current_object_(Obj, Prefix, Dcl, Def, Super))), - assertz(lgt_entity_(object, Obj, Prefix, Dcl)). + assertz('$lgt_entity_functors_'(Term)), + assertz('$lgt_rclause_'('$lgt_current_object_'(Obj, Prefix, Dcl, Def, Super))), + assertz('$lgt_entity_'(object, Obj, Prefix, Dcl)). -% lgt_tr_category_id(+category_identifier) +% '$lgt_tr_category_id'(+category_identifier) % % from the category identifier construct the set of % functor prefixes used in the compiled code clauses -lgt_tr_category_id(Ctg) :- - lgt_add_referenced_category(Ctg), - lgt_construct_category_functors(Ctg, Prefix, Dcl, Def), - assertz(lgt_category_(Ctg, Prefix, Dcl, Def)), +'$lgt_tr_category_id'(Ctg) :- + '$lgt_add_referenced_category'(Ctg), + '$lgt_construct_category_functors'(Ctg, Prefix, Dcl, Def), + assertz('$lgt_category_'(Ctg, Prefix, Dcl, Def)), Term =.. [Prefix, Dcl, Def], - assertz(lgt_entity_functors_(Term)), - assertz(lgt_rclause_(lgt_current_category_(Ctg, Prefix))), - assertz(lgt_entity_(category, Ctg, Prefix, Dcl)). + assertz('$lgt_entity_functors_'(Term)), + assertz('$lgt_rclause_'('$lgt_current_category_'(Ctg, Prefix))), + assertz('$lgt_entity_'(category, Ctg, Prefix, Dcl)). -% lgt_tr_protocol_id(+protocol_identifier) +% '$lgt_tr_protocol_id'(+protocol_identifier) % % from the protocol identifier construct the set of % functor prefixes used in the compiled code clauses -lgt_tr_protocol_id(Ptc) :- - lgt_add_referenced_protocol(Ptc), - lgt_construct_protocol_functors(Ptc, Prefix, Dcl), - assertz(lgt_protocol_(Ptc, Prefix, Dcl)), +'$lgt_tr_protocol_id'(Ptc) :- + '$lgt_add_referenced_protocol'(Ptc), + '$lgt_construct_protocol_functors'(Ptc, Prefix, Dcl), + assertz('$lgt_protocol_'(Ptc, Prefix, Dcl)), Term =.. [Prefix, Dcl], - assertz(lgt_entity_functors_(Term)), - assertz(lgt_rclause_(lgt_current_protocol_(Ptc, Prefix))), - assertz(lgt_entity_(protocol, Ptc, Prefix, Dcl)). + assertz('$lgt_entity_functors_'(Term)), + assertz('$lgt_rclause_'('$lgt_current_protocol_'(Ptc, Prefix))), + assertz('$lgt_entity_'(protocol, Ptc, Prefix, Dcl)). -% lgt_tr_implements_protocol(+list, +object_identifier) -% lgt_tr_implements_protocol(+list, +category_identifier) +% '$lgt_tr_implements_protocol'(+list, +object_identifier) +% '$lgt_tr_implements_protocol'(+list, +category_identifier) % % translates an "implementents" relation between % a category or an object and a list of protocols -lgt_tr_implements_protocol([], _). +'$lgt_tr_implements_protocol'([], _). -lgt_tr_implements_protocol([Ref| Refs], ObjOrCtg) :- - lgt_valid_scope(Ref) -> - (lgt_scope_id(Ref, Scope, Ptc), - (lgt_valid_protocol_id(Ptc) -> - lgt_add_referenced_protocol(Ptc), - assertz(lgt_rclause_(lgt_implements_protocol_(ObjOrCtg, Ptc, Scope))), - lgt_construct_protocol_functors(Ptc, Prefix, Dcl), - assertz(lgt_implemented_protocol_(Ptc, Prefix, Dcl, Scope)), - lgt_tr_implements_protocol(Refs, ObjOrCtg) +'$lgt_tr_implements_protocol'([Ref| Refs], ObjOrCtg) :- + '$lgt_valid_scope'(Ref) -> + ('$lgt_scope_id'(Ref, Scope, Ptc), + ('$lgt_valid_protocol_id'(Ptc) -> + '$lgt_add_referenced_protocol'(Ptc), + assertz('$lgt_rclause_'('$lgt_implements_protocol_'(ObjOrCtg, Ptc, Scope))), + '$lgt_construct_protocol_functors'(Ptc, Prefix, Dcl), + assertz('$lgt_implemented_protocol_'(Ptc, Prefix, Dcl, Scope)), + '$lgt_tr_implements_protocol'(Refs, ObjOrCtg) ; throw(type_error(protocol_identifier, Ptc)))) ; @@ -3414,22 +3438,22 @@ lgt_tr_implements_protocol([Ref| Refs], ObjOrCtg) :- -% lgt_tr_imports_category(+list, +object_identifier) +% '$lgt_tr_imports_category'(+list, +object_identifier) % % translates an "imports" relation between % an object and a list of categories -lgt_tr_imports_category([], _). +'$lgt_tr_imports_category'([], _). -lgt_tr_imports_category([Ref| Refs], Obj) :- - lgt_valid_scope(Ref) -> - (lgt_scope_id(Ref, Scope, Ctg), - (lgt_valid_category_id(Ctg) -> - lgt_add_referenced_category(Ctg), - assertz(lgt_rclause_(lgt_imports_category_(Obj, Ctg, Scope))), - lgt_construct_category_functors(Ctg, Prefix, Dcl, Def), - assertz(lgt_imported_category_(Ctg, Prefix, Dcl, Def, Scope)), - lgt_tr_imports_category(Refs, Obj) +'$lgt_tr_imports_category'([Ref| Refs], Obj) :- + '$lgt_valid_scope'(Ref) -> + ('$lgt_scope_id'(Ref, Scope, Ctg), + ('$lgt_valid_category_id'(Ctg) -> + '$lgt_add_referenced_category'(Ctg), + assertz('$lgt_rclause_'('$lgt_imports_category_'(Obj, Ctg, Scope))), + '$lgt_construct_category_functors'(Ctg, Prefix, Dcl, Def), + assertz('$lgt_imported_category_'(Ctg, Prefix, Dcl, Def, Scope)), + '$lgt_tr_imports_category'(Refs, Obj) ; throw(type_error(category_identifier, Ctg)))) ; @@ -3437,22 +3461,22 @@ lgt_tr_imports_category([Ref| Refs], Obj) :- -% lgt_tr_instantiates_class(+list, +object_identifier) +% '$lgt_tr_instantiates_class'(+list, +object_identifier) % % translates an "instantiates" relation between % an instance and a list of classes -lgt_tr_instantiates_class([], _). +'$lgt_tr_instantiates_class'([], _). -lgt_tr_instantiates_class([Ref| Refs], Obj) :- - lgt_valid_scope(Ref) -> - (lgt_scope_id(Ref, Scope, Class), - (lgt_valid_object_id(Class) -> - lgt_add_referenced_object(Class), - assertz(lgt_rclause_(lgt_instantiates_class_(Obj, Class, Scope))), - lgt_construct_object_functors(Class, Prefix, Dcl, Def, Super, IDcl, IDef, DDcl, DDef), - assertz(lgt_instantiated_class_(Class, Prefix, Dcl, Def, Super, IDcl, IDef, DDcl, DDef, Scope)), - lgt_tr_instantiates_class(Refs, Obj) +'$lgt_tr_instantiates_class'([Ref| Refs], Obj) :- + '$lgt_valid_scope'(Ref) -> + ('$lgt_scope_id'(Ref, Scope, Class), + ('$lgt_valid_object_id'(Class) -> + '$lgt_add_referenced_object'(Class), + assertz('$lgt_rclause_'('$lgt_instantiates_class_'(Obj, Class, Scope))), + '$lgt_construct_object_functors'(Class, Prefix, Dcl, Def, Super, IDcl, IDef, DDcl, DDef), + assertz('$lgt_instantiated_class_'(Class, Prefix, Dcl, Def, Super, IDcl, IDef, DDcl, DDef, Scope)), + '$lgt_tr_instantiates_class'(Refs, Obj) ; throw(type_error(object_identifier, Class)))) ; @@ -3460,22 +3484,22 @@ lgt_tr_instantiates_class([Ref| Refs], Obj) :- -% lgt_tr_specializes_class(+list, +object_identifier) +% '$lgt_tr_specializes_class'(+list, +object_identifier) % % translates a "specializes" relation between % a class and a list of superclasses -lgt_tr_specializes_class([], _). +'$lgt_tr_specializes_class'([], _). -lgt_tr_specializes_class([Ref| Refs], Class) :- - lgt_valid_scope(Ref) -> - (lgt_scope_id(Ref, Scope, Superclass), - (lgt_valid_object_id(Superclass) -> - lgt_add_referenced_object(Superclass), - assertz(lgt_rclause_(lgt_specializes_class_(Class, Superclass, Scope))), - lgt_construct_object_functors(Superclass, Prefix, Dcl, Def, Super, IDcl, IDef, DDcl, DDef), - assertz(lgt_specialized_class_(Superclass, Prefix, Dcl, Def, Super, IDcl, IDef, DDcl, DDef, Scope)), - lgt_tr_specializes_class(Refs, Class) +'$lgt_tr_specializes_class'([Ref| Refs], Class) :- + '$lgt_valid_scope'(Ref) -> + ('$lgt_scope_id'(Ref, Scope, Superclass), + ('$lgt_valid_object_id'(Superclass) -> + '$lgt_add_referenced_object'(Superclass), + assertz('$lgt_rclause_'('$lgt_specializes_class_'(Class, Superclass, Scope))), + '$lgt_construct_object_functors'(Superclass, Prefix, Dcl, Def, Super, IDcl, IDef, DDcl, DDef), + assertz('$lgt_specialized_class_'(Superclass, Prefix, Dcl, Def, Super, IDcl, IDef, DDcl, DDef, Scope)), + '$lgt_tr_specializes_class'(Refs, Class) ; throw(type_error(object_identifier, Superclass)))) ; @@ -3483,22 +3507,22 @@ lgt_tr_specializes_class([Ref| Refs], Class) :- -% lgt_tr_extends_object(+list, +object_identifier) +% '$lgt_tr_extends_object'(+list, +object_identifier) % % translates an "extends" relation between % a prototype and a list of parents -lgt_tr_extends_object([], _). +'$lgt_tr_extends_object'([], _). -lgt_tr_extends_object([Ref| Refs], Obj) :- - lgt_valid_scope(Ref) -> - (lgt_scope_id(Ref, Scope, Parent), - (lgt_valid_object_id(Parent) -> - lgt_add_referenced_object(Parent), - assertz(lgt_rclause_(lgt_extends_object_(Obj, Parent, Scope))), - lgt_construct_object_functors(Parent, Prefix, Dcl, Def, Super, IDcl, IDef, DDcl, DDef), - assertz(lgt_extended_object_(Parent, Prefix, Dcl, Def, Super, IDcl, IDef, DDcl, DDef, Scope)), - lgt_tr_extends_object(Refs, Obj) +'$lgt_tr_extends_object'([Ref| Refs], Obj) :- + '$lgt_valid_scope'(Ref) -> + ('$lgt_scope_id'(Ref, Scope, Parent), + ('$lgt_valid_object_id'(Parent) -> + '$lgt_add_referenced_object'(Parent), + assertz('$lgt_rclause_'('$lgt_extends_object_'(Obj, Parent, Scope))), + '$lgt_construct_object_functors'(Parent, Prefix, Dcl, Def, Super, IDcl, IDef, DDcl, DDef), + assertz('$lgt_extended_object_'(Parent, Prefix, Dcl, Def, Super, IDcl, IDef, DDcl, DDef, Scope)), + '$lgt_tr_extends_object'(Refs, Obj) ; throw(type_error(object_identifier, Parent)))) ; @@ -3506,22 +3530,22 @@ lgt_tr_extends_object([Ref| Refs], Obj) :- -% lgt_tr_extends_protocol(+list, +protocol_identifier) +% '$lgt_tr_extends_protocol'(+list, +protocol_identifier) % % translates an "extends" relation between % a protocol and a list of protocols -lgt_tr_extends_protocol([], _). +'$lgt_tr_extends_protocol'([], _). -lgt_tr_extends_protocol([Ref| Refs], Ptc1) :- - lgt_valid_scope(Ref) -> - (lgt_scope_id(Ref, Scope, Ptc2), - (lgt_valid_protocol_id(Ptc2) -> - lgt_add_referenced_protocol(Ptc2), - assertz(lgt_rclause_(lgt_extends_protocol_(Ptc1, Ptc2, Scope))), - lgt_construct_protocol_functors(Ptc2, Prefix, Dcl), - assertz(lgt_extended_protocol_(Ptc2, Prefix, Dcl, Scope)), - lgt_tr_extends_protocol(Refs, Ptc1) +'$lgt_tr_extends_protocol'([Ref| Refs], Ptc1) :- + '$lgt_valid_scope'(Ref) -> + ('$lgt_scope_id'(Ref, Scope, Ptc2), + ('$lgt_valid_protocol_id'(Ptc2) -> + '$lgt_add_referenced_protocol'(Ptc2), + assertz('$lgt_rclause_'('$lgt_extends_protocol_'(Ptc1, Ptc2, Scope))), + '$lgt_construct_protocol_functors'(Ptc2, Prefix, Dcl), + assertz('$lgt_extended_protocol_'(Ptc2, Prefix, Dcl, Scope)), + '$lgt_tr_extends_protocol'(Refs, Ptc1) ; throw(type_error(protocol_identifier, Ptc2)))) ; @@ -3529,66 +3553,66 @@ lgt_tr_extends_protocol([Ref| Refs], Ptc1) :- -% lgt_add_referenced_object(+object_identifier) +% '$lgt_add_referenced_object'(+object_identifier) % % assert the name of an object referenced by the entity that we are compiling -lgt_add_referenced_object(Obj) :- - lgt_referenced_object_(Obj) -> +'$lgt_add_referenced_object'(Obj) :- + '$lgt_referenced_object_'(Obj) -> true ; - assertz(lgt_referenced_object_(Obj)). + assertz('$lgt_referenced_object_'(Obj)). -% lgt_add_referenced_protocol(+protocol_identifier) +% '$lgt_add_referenced_protocol'(+protocol_identifier) % % assert the name of a protocol referenced by the entity that we are compiling -lgt_add_referenced_protocol(Ptc) :- - lgt_referenced_protocol_(Ptc) -> +'$lgt_add_referenced_protocol'(Ptc) :- + '$lgt_referenced_protocol_'(Ptc) -> true ; - assertz(lgt_referenced_protocol_(Ptc)). + assertz('$lgt_referenced_protocol_'(Ptc)). -% lgt_add_referenced_category(+category_identifier) +% '$lgt_add_referenced_category'(+category_identifier) % % assert the name of a category referenced by the entity that we are compiling -lgt_add_referenced_category(Ctg) :- - lgt_referenced_category_(Ctg) -> +'$lgt_add_referenced_category'(Ctg) :- + '$lgt_referenced_category_'(Ctg) -> true ; - assertz(lgt_referenced_category_(Ctg)). + assertz('$lgt_referenced_category_'(Ctg)). -% lgt_report_unknown_entities +% '$lgt_report_unknown_entities' % % report any unknown referenced entities found while compiling an entity % (if the corresponding compiler option is not set to "silent") -lgt_report_unknown_entities :- - (lgt_compiler_option(unknown, warning), - lgt_compiler_option(report, on)) -> - lgt_report_unknown_objects, - lgt_report_unknown_protocols, - lgt_report_unknown_categories +'$lgt_report_unknown_entities' :- + ('$lgt_compiler_option'(unknown, warning), + '$lgt_compiler_option'(report, on)) -> + '$lgt_report_unknown_objects', + '$lgt_report_unknown_protocols', + '$lgt_report_unknown_categories' ; true. -% lgt_report_unknown_objects +% '$lgt_report_unknown_objects' % % report any unknown referenced objects found while compiling an entity -lgt_report_unknown_objects :- +'$lgt_report_unknown_objects' :- findall( Obj, - (lgt_referenced_object_(Obj), \+ (lgt_current_object_(Obj, _, _, _, _); lgt_entity_(_, Obj, _, _))), + ('$lgt_referenced_object_'(Obj), \+ ('$lgt_current_object_'(Obj, _, _, _, _); '$lgt_entity_'(_, Obj, _, _))), Objs), (Objs \= [] -> write('WARNING! references to unknown objects: '), writeq(Objs), nl @@ -3597,14 +3621,14 @@ lgt_report_unknown_objects :- -% lgt_report_unknown_protocols +% '$lgt_report_unknown_protocols' % % report any unknown referenced protocols found while compiling an entity -lgt_report_unknown_protocols :- +'$lgt_report_unknown_protocols' :- findall( Ptc, - (lgt_referenced_protocol_(Ptc), \+ (lgt_current_protocol_(Ptc, _); lgt_entity_(_, Ptc, _, _))), + ('$lgt_referenced_protocol_'(Ptc), \+ ('$lgt_current_protocol_'(Ptc, _); '$lgt_entity_'(_, Ptc, _, _))), Ptcs), (Ptcs \= [] -> write('WARNING! references to unknown protocols: '), writeq(Ptcs), nl @@ -3613,14 +3637,14 @@ lgt_report_unknown_protocols :- -% lgt_report_unknown_categories +% '$lgt_report_unknown_categories' % % report any unknown referenced categories found while compiling an entity -lgt_report_unknown_categories :- +'$lgt_report_unknown_categories' :- findall( Ctg, - (lgt_referenced_category_(Ctg), \+ (lgt_current_category_(Ctg, _); lgt_entity_(_, Ctg, _, _))), + ('$lgt_referenced_category_'(Ctg), \+ ('$lgt_current_category_'(Ctg, _); '$lgt_entity_'(_, Ctg, _, _))), Ctgs), (Ctgs \= [] -> write('WARNING! references to unknown categories: '), writeq(Ctgs), nl @@ -3629,87 +3653,87 @@ lgt_report_unknown_categories :- -% lgt_add_def_clause(+atom, +integer, +atom, +term) +% '$lgt_add_def_clause'(+atom, +integer, +atom, +term) % % adds a "def clause" (used to translate a predicate call) -lgt_add_def_clause(Functor, Arity, Prefix, Context) :- +'$lgt_add_def_clause'(Functor, Arity, Prefix, Context) :- functor(Head, Functor, Arity), Head =.. [_| Args], - lgt_sender(Context, Sender), - lgt_this(Context, This), - lgt_self(Context, Self), - lgt_append(Args, [Sender, This, Self], TArgs), + '$lgt_sender'(Context, Sender), + '$lgt_this'(Context, This), + '$lgt_self'(Context, Self), + '$lgt_append'(Args, [Sender, This, Self], TArgs), THead =.. [Prefix|TArgs], once( - (lgt_object_(_, _, _, Def, _, _, _, _, _); - lgt_category_(_, _, _, Def))), + ('$lgt_object_'(_, _, _, Def, _, _, _, _, _); + '$lgt_category_'(_, _, _, Def))), Clause =.. [Def, Head, Sender, This, Self, THead], - (lgt_def_(Clause) -> + ('$lgt_def_'(Clause) -> true ; - assertz(lgt_def_(Clause))), - (lgt_built_in(Head) -> - assertz(lgt_redefined_built_in_(Head, Context, THead)) + assertz('$lgt_def_'(Clause))), + ('$lgt_built_in'(Head) -> + assertz('$lgt_redefined_built_in_'(Head, Context, THead)) ; true), - (lgt_defs_pred_(Functor/Arity) -> + ('$lgt_defs_pred_'(Functor/Arity) -> true ; - assertz(lgt_defs_pred_(Functor/Arity))). + assertz('$lgt_defs_pred_'(Functor/Arity))). -% lgt_add_ddef_clause(+atom, +integer, +atom, +term) +% '$lgt_add_ddef_clause'(+atom, +integer, +atom, +term) % % adds a "ddef clause" (used to translate a predicate call) -lgt_add_ddef_clause(Functor, Arity, Prefix, Context) :- +'$lgt_add_ddef_clause'(Functor, Arity, Prefix, Context) :- functor(Head, Functor, Arity), Head =.. [_| Args], - lgt_sender(Context, Sender), - lgt_this(Context, This), - lgt_self(Context, Self), - lgt_append(Args, [Sender, This, Self], TArgs), + '$lgt_sender'(Context, Sender), + '$lgt_this'(Context, This), + '$lgt_self'(Context, Self), + '$lgt_append'(Args, [Sender, This, Self], TArgs), THead =.. [Prefix|TArgs], - lgt_object_(_, _, _, _, _, _, _, _, DDef), + '$lgt_object_'(_, _, _, _, _, _, _, _, DDef), Clause =.. [DDef, Head, Sender, This, Self, THead], - (lgt_ddef_(Clause) -> + ('$lgt_ddef_'(Clause) -> true ; - assertz(lgt_ddef_(Clause))), - (lgt_built_in(Head) -> - assertz(lgt_redefined_built_in_(Head, Context, THead)) + assertz('$lgt_ddef_'(Clause))), + ('$lgt_built_in'(Head) -> + assertz('$lgt_redefined_built_in_'(Head, Context, THead)) ; true), - (lgt_defs_pred_(Functor/Arity) -> + ('$lgt_defs_pred_'(Functor/Arity) -> true ; - assertz(lgt_defs_pred_(Functor/Arity))). + assertz('$lgt_defs_pred_'(Functor/Arity))). -% lgt_assert_ddef_clause(+atom, +integer, +atom, +atom, -callable) +% '$lgt_assert_ddef_clause'(+atom, +integer, +atom, +atom, -callable) % % asserts a dynamic "ddef clause" (used to translate a predicate call) -lgt_assert_ddef_clause(Functor, Arity, OPrefix, DDef, Call) :- - lgt_construct_predicate_functor(OPrefix, Functor, Arity, PPrefix), +'$lgt_assert_ddef_clause'(Functor, Arity, OPrefix, DDef, Call) :- + '$lgt_construct_predicate_functor'(OPrefix, Functor, Arity, PPrefix), functor(Pred, Functor, Arity), Pred =.. [_| Args], - lgt_append(Args, [Sender, This, Self], TArgs), + '$lgt_append'(Args, [Sender, This, Self], TArgs), Call =.. [PPrefix| TArgs], Clause =.. [DDef, Pred, Sender, This, Self, Call], assertz(Clause). -% lgt_update_ddef_table(+atom, +callable) +% '$lgt_update_ddef_table'(+atom, +callable) % % retracts a dynamic "ddef clause" (used to translate a predicate call) % if there are no more clauses for the predicate otherwise does nothing -lgt_update_ddef_table(DDef, Call) :- +'$lgt_update_ddef_table'(DDef, Call) :- functor(Call, Functor, Arity), functor(Call2, Functor, Arity), (clause(Call2, _) -> @@ -3720,11 +3744,11 @@ lgt_update_ddef_table(DDef, Call) :- -% lgt_convert_test_scope(@term, +term), +% '$lgt_convert_test_scope'(@term, +term), % % convert asserta/z test scope to predicate declaration scope -lgt_convert_test_scope(Scope, Scope2) :- +'$lgt_convert_test_scope'(Scope, Scope2) :- var(Scope) -> Scope2 = p ; @@ -3735,11 +3759,11 @@ lgt_convert_test_scope(Scope, Scope2) :- -% lgt_assert_ddcl_clause(+atom, +term, +term) +% '$lgt_assert_ddcl_clause'(+atom, +term, +term) % % asserts a dynamic predicate declaration -lgt_assert_ddcl_clause(DDcl, Pred, Scope) :- +'$lgt_assert_ddcl_clause'(DDcl, Pred, Scope) :- functor(Pred, Functor, Arity), functor(DPred, Functor, Arity), Clause =.. [DDcl, DPred, Scope, (dynamic), no], @@ -3747,249 +3771,249 @@ lgt_assert_ddcl_clause(DDcl, Pred, Scope) :- -% lgt_gen_directives(+atom) +% '$lgt_gen_directives'(+atom) % % generates entity directives -lgt_gen_directives(object) :- - lgt_gen_object_directives. +'$lgt_gen_directives'(object) :- + '$lgt_gen_object_directives'. -lgt_gen_directives(category) :- - lgt_gen_category_directives. +'$lgt_gen_directives'(category) :- + '$lgt_gen_category_directives'. -lgt_gen_directives(protocol) :- - lgt_gen_protocol_directives. +'$lgt_gen_directives'(protocol) :- + '$lgt_gen_protocol_directives'. -lgt_gen_object_directives :- - lgt_gen_object_dynamic_directives, - lgt_gen_object_discontiguous_directives. +'$lgt_gen_object_directives' :- + '$lgt_gen_object_dynamic_directives', + '$lgt_gen_object_discontiguous_directives'. -lgt_gen_category_directives :- - lgt_gen_category_dynamic_directives, - lgt_gen_category_discontiguous_directives. +'$lgt_gen_category_directives' :- + '$lgt_gen_category_dynamic_directives', + '$lgt_gen_category_discontiguous_directives'. -lgt_gen_protocol_directives :- - lgt_entity_comp_mode_((dynamic)) -> - lgt_protocol_(_, Prefix, Dcl), - assertz(lgt_directive_(dynamic(Prefix/1))), - assertz(lgt_directive_(dynamic(Dcl/4))), - assertz(lgt_directive_(dynamic(Dcl/5))) +'$lgt_gen_protocol_directives' :- + '$lgt_entity_comp_mode_'((dynamic)) -> + '$lgt_protocol_'(_, Prefix, Dcl), + assertz('$lgt_directive_'(dynamic(Prefix/1))), + assertz('$lgt_directive_'(dynamic(Dcl/4))), + assertz('$lgt_directive_'(dynamic(Dcl/5))) ; true. -lgt_gen_object_dynamic_directives :- - lgt_entity_comp_mode_((dynamic)) -> - lgt_gen_dynamic_object_dynamic_directives +'$lgt_gen_object_dynamic_directives' :- + '$lgt_entity_comp_mode_'((dynamic)) -> + '$lgt_gen_dynamic_object_dynamic_directives' ; - lgt_gen_static_object_dynamic_directives. + '$lgt_gen_static_object_dynamic_directives'. -lgt_gen_dynamic_object_dynamic_directives :- - lgt_object_(_, Prefix, Dcl, Def, Super, IDcl, IDef, DDcl, DDef), - assertz(lgt_directive_(dynamic(Prefix/7))), - assertz(lgt_directive_(dynamic(Dcl/4))), - assertz(lgt_directive_(dynamic(Dcl/6))), - assertz(lgt_directive_(dynamic(Def/5))), - assertz(lgt_directive_(dynamic(Def/6))), - assertz(lgt_directive_(dynamic(Super/6))), - assertz(lgt_directive_(dynamic(IDcl/6))), - assertz(lgt_directive_(dynamic(IDef/6))), - assertz(lgt_directive_(dynamic(DDcl/4))), - assertz(lgt_directive_(dynamic(DDef/5))), +'$lgt_gen_dynamic_object_dynamic_directives' :- + '$lgt_object_'(_, Prefix, Dcl, Def, Super, IDcl, IDef, DDcl, DDef), + assertz('$lgt_directive_'(dynamic(Prefix/7))), + assertz('$lgt_directive_'(dynamic(Dcl/4))), + assertz('$lgt_directive_'(dynamic(Dcl/6))), + assertz('$lgt_directive_'(dynamic(Def/5))), + assertz('$lgt_directive_'(dynamic(Def/6))), + assertz('$lgt_directive_'(dynamic(Super/6))), + assertz('$lgt_directive_'(dynamic(IDcl/6))), + assertz('$lgt_directive_'(dynamic(IDef/6))), + assertz('$lgt_directive_'(dynamic(DDcl/4))), + assertz('$lgt_directive_'(dynamic(DDef/5))), forall( - (lgt_def_(Clause), Clause \= (_ :- _)), + ('$lgt_def_'(Clause), Clause \= (_ :- _)), (arg(5, Clause, Call), functor(Call, Functor, Arity), - assertz(lgt_directive_(dynamic(Functor/Arity))))). + assertz('$lgt_directive_'(dynamic(Functor/Arity))))). -lgt_gen_static_object_dynamic_directives :- - lgt_object_(_, _, _, Def, _, _, _, DDcl, DDef), - assertz(lgt_directive_(dynamic(DDcl/4))), - assertz(lgt_directive_(dynamic(DDef/5))), - lgt_dynamic_(Functor/Arity), +'$lgt_gen_static_object_dynamic_directives' :- + '$lgt_object_'(_, _, _, Def, _, _, _, DDcl, DDef), + assertz('$lgt_directive_'(dynamic(DDcl/4))), + assertz('$lgt_directive_'(dynamic(DDef/5))), + '$lgt_dynamic_'(Functor/Arity), functor(Pred, Functor, Arity), Clause =.. [Def, Pred, _, _, _, TPred], - lgt_def_(Clause), + '$lgt_def_'(Clause), functor(TPred, TFunctor, TArity), - assertz(lgt_directive_(dynamic(TFunctor/TArity))), + assertz('$lgt_directive_'(dynamic(TFunctor/TArity))), fail. -lgt_gen_static_object_dynamic_directives. +'$lgt_gen_static_object_dynamic_directives'. -lgt_gen_object_discontiguous_directives :- - lgt_object_(_, _, _, Def, _, _, _, _, _), - lgt_discontiguous_(Functor/Arity), +'$lgt_gen_object_discontiguous_directives' :- + '$lgt_object_'(_, _, _, Def, _, _, _, _, _), + '$lgt_discontiguous_'(Functor/Arity), functor(Pred, Functor, Arity), Clause =.. [Def, Pred, _, _, _, TPred], - lgt_def_(Clause), + '$lgt_def_'(Clause), functor(TPred, TFunctor, TArity), - assertz(lgt_directive_(discontiguous(TFunctor/TArity))), + assertz('$lgt_directive_'(discontiguous(TFunctor/TArity))), fail. -lgt_gen_object_discontiguous_directives. +'$lgt_gen_object_discontiguous_directives'. -lgt_gen_category_dynamic_directives :- - lgt_entity_comp_mode_((dynamic)) -> - lgt_category_(_, Prefix, Dcl, Def), - assertz(lgt_directive_(dynamic(Prefix/2))), - assertz(lgt_directive_(dynamic(Dcl/4))), - assertz(lgt_directive_(dynamic(Dcl/5))), - assertz(lgt_directive_(dynamic(Def/5))), +'$lgt_gen_category_dynamic_directives' :- + '$lgt_entity_comp_mode_'((dynamic)) -> + '$lgt_category_'(_, Prefix, Dcl, Def), + assertz('$lgt_directive_'(dynamic(Prefix/2))), + assertz('$lgt_directive_'(dynamic(Dcl/4))), + assertz('$lgt_directive_'(dynamic(Dcl/5))), + assertz('$lgt_directive_'(dynamic(Def/5))), forall( - (lgt_def_(Clause), Clause \= (_ :- _)), + ('$lgt_def_'(Clause), Clause \= (_ :- _)), (arg(5, Clause, Call), functor(Call, Functor, Arity), - assertz(lgt_directive_(dynamic(Functor/Arity))))) + assertz('$lgt_directive_'(dynamic(Functor/Arity))))) ; true. -lgt_gen_category_discontiguous_directives :- - lgt_category_(_, _, _, Def), - lgt_discontiguous_(Functor/Arity), +'$lgt_gen_category_discontiguous_directives' :- + '$lgt_category_'(_, _, _, Def), + '$lgt_discontiguous_'(Functor/Arity), functor(Pred, Functor, Arity), Clause =.. [Def, Pred, _, _, _, TPred], - lgt_def_(Clause), + '$lgt_def_'(Clause), functor(TPred, TFunctor, TArity), - assertz(lgt_directive_(discontiguous(TFunctor/TArity))), + assertz('$lgt_directive_'(discontiguous(TFunctor/TArity))), fail. -lgt_gen_category_discontiguous_directives. +'$lgt_gen_category_discontiguous_directives'. -% lgt_gen_clauses(+atom) +% '$lgt_gen_clauses'(+atom) -lgt_gen_clauses(object) :- - lgt_gen_object_clauses. +'$lgt_gen_clauses'(object) :- + '$lgt_gen_object_clauses'. -lgt_gen_clauses(protocol) :- - lgt_gen_protocol_clauses. +'$lgt_gen_clauses'(protocol) :- + '$lgt_gen_protocol_clauses'. -lgt_gen_clauses(category) :- - lgt_gen_category_clauses. +'$lgt_gen_clauses'(category) :- + '$lgt_gen_category_clauses'. -lgt_gen_object_clauses :- - (lgt_rclause_(lgt_instantiates_class_(_, _, _)); - lgt_rclause_(lgt_specializes_class_(_, _, _))) -> - lgt_gen_ic_clauses +'$lgt_gen_object_clauses' :- + ('$lgt_rclause_'('$lgt_instantiates_class_'(_, _, _)); + '$lgt_rclause_'('$lgt_specializes_class_'(_, _, _))) -> + '$lgt_gen_ic_clauses' ; - lgt_gen_prototype_clauses. + '$lgt_gen_prototype_clauses'. -% lgt_gen_local_dcl_clauses +% '$lgt_gen_local_dcl_clauses' % % a (local) predicate declaration is only generated % if there is a scope declaration for the predicate -lgt_gen_local_dcl_clauses :- - lgt_entity_(_, _, _, Dcl), - ((lgt_public_(Functor/Arity), Scope = p(p(p))); - (lgt_protected_(Functor/Arity), Scope = p(p)); - (lgt_private_(Functor/Arity), Scope = p)), +'$lgt_gen_local_dcl_clauses' :- + '$lgt_entity_'(_, _, _, Dcl), + (('$lgt_public_'(Functor/Arity), Scope = p(p(p))); + ('$lgt_protected_'(Functor/Arity), Scope = p(p)); + ('$lgt_private_'(Functor/Arity), Scope = p)), functor(Meta, Functor, Arity), - (lgt_metapredicate_(Meta) -> + ('$lgt_metapredicate_'(Meta) -> Meta2 = Meta ; Meta2 = no), functor(Pred, Functor, Arity), - (lgt_dynamic_(Functor/Arity)-> + ('$lgt_dynamic_'(Functor/Arity)-> Compilation = (dynamic) ; Compilation = static), Fact =.. [Dcl, Pred, Scope, Compilation, Meta2], - assertz(lgt_dcl_(Fact)), + assertz('$lgt_dcl_'(Fact)), fail. -lgt_gen_local_dcl_clauses. +'$lgt_gen_local_dcl_clauses'. -lgt_gen_catchall_dcl_clause :- - \+ lgt_dcl_(_) -> - lgt_entity_(_, _, _, Dcl), +'$lgt_gen_catchall_dcl_clause' :- + \+ '$lgt_dcl_'(_) -> + '$lgt_entity_'(_, _, _, Dcl), Head =.. [Dcl, _, _, _, _], - assertz(lgt_dcl_((Head:-fail))) + assertz('$lgt_dcl_'((Head:-fail))) ; true. -% lgt_gen_local_def_clauses +% '$lgt_gen_local_def_clauses' % % generates local def clauses for undefined but declared (via scope or % dynamic directives) predicates -lgt_gen_local_def_clauses :- - lgt_entity_(_, _, EPrefix, _), - lgt_dynamic_(Functor/Arity), - \+ lgt_defs_pred_(Functor/Arity), - lgt_construct_predicate_functor(EPrefix, Functor, Arity, PPrefix), - lgt_context(Context), - ((\+ lgt_public_(Functor/Arity), - \+ lgt_protected_(Functor/Arity), - \+ lgt_private_(Functor/Arity)) -> - lgt_add_ddef_clause(Functor, Arity, PPrefix, Context) +'$lgt_gen_local_def_clauses' :- + '$lgt_entity_'(_, _, EPrefix, _), + '$lgt_dynamic_'(Functor/Arity), + \+ '$lgt_defs_pred_'(Functor/Arity), + '$lgt_construct_predicate_functor'(EPrefix, Functor, Arity, PPrefix), + '$lgt_context'(Context), + ((\+ '$lgt_public_'(Functor/Arity), + \+ '$lgt_protected_'(Functor/Arity), + \+ '$lgt_private_'(Functor/Arity)) -> + '$lgt_add_ddef_clause'(Functor, Arity, PPrefix, Context) ; - lgt_add_def_clause(Functor, Arity, PPrefix, Context)), + '$lgt_add_def_clause'(Functor, Arity, PPrefix, Context)), fail. -lgt_gen_local_def_clauses. +'$lgt_gen_local_def_clauses'. -lgt_gen_obj_catchall_def_clause :- - \+ lgt_def_(_) -> - lgt_object_(_, _, _, Def, _, _, _, _, _), +'$lgt_gen_obj_catchall_def_clause' :- + \+ '$lgt_def_'(_) -> + '$lgt_object_'(_, _, _, Def, _, _, _, _, _), Head =.. [Def, _, _, _, _, _], - assertz(lgt_def_((Head:-fail))) + assertz('$lgt_def_'((Head:-fail))) ; true. -lgt_gen_protocol_clauses :- - lgt_gen_protocol_local_clauses, - lgt_gen_protocol_linking_clauses, - lgt_gen_protocol_extend_clauses. +'$lgt_gen_protocol_clauses' :- + '$lgt_gen_protocol_local_clauses', + '$lgt_gen_protocol_linking_clauses', + '$lgt_gen_protocol_extend_clauses'. -lgt_gen_protocol_local_clauses :- - lgt_gen_local_dcl_clauses, - lgt_gen_catchall_dcl_clause. +'$lgt_gen_protocol_local_clauses' :- + '$lgt_gen_local_dcl_clauses', + '$lgt_gen_catchall_dcl_clause'. -lgt_gen_protocol_linking_clauses :- - lgt_protocol_(Ptc, _, PDcl), +'$lgt_gen_protocol_linking_clauses' :- + '$lgt_protocol_'(Ptc, _, PDcl), Head =.. [PDcl, Pred, Scope, Compilation, Meta, Ptc], Body =.. [PDcl, Pred, Scope, Compilation, Meta], - assertz(lgt_dcl_((Head:-Body))). + assertz('$lgt_dcl_'((Head:-Body))). -lgt_gen_protocol_extend_clauses :- - lgt_protocol_(_, _, PDcl1), +'$lgt_gen_protocol_extend_clauses' :- + '$lgt_protocol_'(_, _, PDcl1), Head =.. [PDcl1, Pred, Scope, Compilation, Meta, Container], - lgt_extended_protocol_(_, _, PDcl2, EScope), + '$lgt_extended_protocol_'(_, _, PDcl2, EScope), (EScope = (public) -> Body =.. [PDcl2, Pred, Scope, Compilation, Meta, Container] ; @@ -3999,39 +4023,39 @@ lgt_gen_protocol_extend_clauses :- ; Scope = p, Body =.. [PDcl2, Pred, _, Compilation, Meta, Container])), - assertz(lgt_dcl_((Head:-Body))), + assertz('$lgt_dcl_'((Head:-Body))), fail. -lgt_gen_protocol_extend_clauses. +'$lgt_gen_protocol_extend_clauses'. -lgt_gen_category_clauses :- - lgt_gen_category_dcl_clauses, - lgt_gen_category_def_clauses. +'$lgt_gen_category_clauses' :- + '$lgt_gen_category_dcl_clauses', + '$lgt_gen_category_def_clauses'. -lgt_gen_category_dcl_clauses :- - lgt_gen_local_dcl_clauses, - lgt_gen_catchall_dcl_clause, - lgt_gen_category_linking_dcl_clauses, - lgt_gen_category_implements_dcl_clauses. +'$lgt_gen_category_dcl_clauses' :- + '$lgt_gen_local_dcl_clauses', + '$lgt_gen_catchall_dcl_clause', + '$lgt_gen_category_linking_dcl_clauses', + '$lgt_gen_category_implements_dcl_clauses'. -lgt_gen_category_linking_dcl_clauses :- - lgt_category_(Ctg, _, CDcl, _), +'$lgt_gen_category_linking_dcl_clauses' :- + '$lgt_category_'(Ctg, _, CDcl, _), Head =.. [CDcl, Pred, Scope, Compilation, Meta, Ctg], Body =.. [CDcl, Pred, Scope, Compilation, Meta], - assertz(lgt_dcl_((Head:-Body))). + assertz('$lgt_dcl_'((Head:-Body))). -lgt_gen_category_implements_dcl_clauses :- - lgt_category_(_, _, CDcl, _), +'$lgt_gen_category_implements_dcl_clauses' :- + '$lgt_category_'(_, _, CDcl, _), Head =.. [CDcl, Pred, Scope, Compilation, Meta, Container], - lgt_implemented_protocol_(_, _, PDcl, EScope), + '$lgt_implemented_protocol_'(_, _, PDcl, EScope), (EScope = (public) -> Body =.. [PDcl, Pred, Scope, Compilation, Meta, Container] ; @@ -4041,59 +4065,59 @@ lgt_gen_category_implements_dcl_clauses :- ; Scope = p, Body =.. [PDcl, Pred, _, Compilation, Meta, Container])), - assertz(lgt_dcl_((Head:-Body))), + assertz('$lgt_dcl_'((Head:-Body))), fail. -lgt_gen_category_implements_dcl_clauses. +'$lgt_gen_category_implements_dcl_clauses'. -lgt_gen_category_def_clauses :- - lgt_gen_category_catchall_def_clause. +'$lgt_gen_category_def_clauses' :- + '$lgt_gen_category_catchall_def_clause'. -lgt_gen_category_catchall_def_clause :- - \+ lgt_def_(_) -> - lgt_category_(_, _, _, Def), +'$lgt_gen_category_catchall_def_clause' :- + \+ '$lgt_def_'(_) -> + '$lgt_category_'(_, _, _, Def), Head =.. [Def, _, _, _, _, _], - assertz(lgt_def_((Head:-fail))) + assertz('$lgt_def_'((Head:-fail))) ; true. -lgt_gen_prototype_clauses :- - lgt_gen_prototype_dcl_clauses, - lgt_gen_prototype_def_clauses, - lgt_gen_prototype_super_clauses. +'$lgt_gen_prototype_clauses' :- + '$lgt_gen_prototype_dcl_clauses', + '$lgt_gen_prototype_def_clauses', + '$lgt_gen_prototype_super_clauses'. -lgt_gen_prototype_dcl_clauses :- - lgt_gen_local_dcl_clauses, - lgt_gen_catchall_dcl_clause, - lgt_gen_prototype_linking_dcl_clauses, - lgt_gen_prototype_implements_dcl_clauses, - lgt_gen_prototype_imports_dcl_clauses, - lgt_gen_prototype_extends_dcl_clauses. +'$lgt_gen_prototype_dcl_clauses' :- + '$lgt_gen_local_dcl_clauses', + '$lgt_gen_catchall_dcl_clause', + '$lgt_gen_prototype_linking_dcl_clauses', + '$lgt_gen_prototype_implements_dcl_clauses', + '$lgt_gen_prototype_imports_dcl_clauses', + '$lgt_gen_prototype_extends_dcl_clauses'. -lgt_gen_prototype_linking_dcl_clauses :- - lgt_object_(Obj, _, Dcl, _, _, _, _, DDcl, _), +'$lgt_gen_prototype_linking_dcl_clauses' :- + '$lgt_object_'(Obj, _, Dcl, _, _, _, _, DDcl, _), Head =.. [Dcl, Pred, Scope, Compilation, Meta, Obj, Obj], Body =.. [Dcl, Pred, Scope, Compilation, Meta], - assertz(lgt_dcl_((Head:-Body))), + assertz('$lgt_dcl_'((Head:-Body))), Body2 =.. [DDcl, Pred, Scope, Compilation, Meta], - assertz(lgt_dcl_((Head:-Body2))). + assertz('$lgt_dcl_'((Head:-Body2))). -lgt_gen_prototype_implements_dcl_clauses :- - lgt_object_(Obj, _, ODcl, _, _, _, _, _, _), +'$lgt_gen_prototype_implements_dcl_clauses' :- + '$lgt_object_'(Obj, _, ODcl, _, _, _, _, _, _), Head =.. [ODcl, Pred, Scope, Compilation, Meta, Obj, Container], - lgt_implemented_protocol_(_, _, PDcl, EScope), + '$lgt_implemented_protocol_'(_, _, PDcl, EScope), (EScope = (public) -> Body =.. [PDcl, Pred, Scope, Compilation, Meta, Container] ; @@ -4103,17 +4127,17 @@ lgt_gen_prototype_implements_dcl_clauses :- ; Scope = p, Body =.. [PDcl, Pred, _, Compilation, Meta, Container])), - assertz(lgt_dcl_((Head:-Body))), + assertz('$lgt_dcl_'((Head:-Body))), fail. -lgt_gen_prototype_implements_dcl_clauses. +'$lgt_gen_prototype_implements_dcl_clauses'. -lgt_gen_prototype_imports_dcl_clauses :- - lgt_object_(Obj, _, ODcl, _, _, _, _, _, _), +'$lgt_gen_prototype_imports_dcl_clauses' :- + '$lgt_object_'(Obj, _, ODcl, _, _, _, _, _, _), Head =.. [ODcl, Pred, Scope, Compilation, Meta, Obj, Container], - lgt_imported_category_(_, _, CDcl, _, EScope), + '$lgt_imported_category_'(_, _, CDcl, _, EScope), (EScope = (public) -> Body =.. [CDcl, Pred, Scope, Compilation, Meta, Container] ; @@ -4123,17 +4147,17 @@ lgt_gen_prototype_imports_dcl_clauses :- ; Scope = p, Body =.. [CDcl, Pred, _, Compilation, Meta, Container])), - assertz(lgt_dcl_((Head:-Body))), + assertz('$lgt_dcl_'((Head:-Body))), fail. -lgt_gen_prototype_imports_dcl_clauses. +'$lgt_gen_prototype_imports_dcl_clauses'. -lgt_gen_prototype_extends_dcl_clauses :- - lgt_object_(Obj, _, ODcl, _, _, _, _, _, _), +'$lgt_gen_prototype_extends_dcl_clauses' :- + '$lgt_object_'(Obj, _, ODcl, _, _, _, _, _, _), Head =.. [ODcl, Pred, Scope, Compilation, Meta, SContainer, TContainer], - lgt_extended_object_(_, _, PDcl, _, _, _, _, _, _, EScope), + '$lgt_extended_object_'(_, _, PDcl, _, _, _, _, _, _, EScope), (EScope = (public) -> Body =.. [PDcl, Pred, Scope, Compilation, Meta, SContainer, TContainer] ; @@ -4144,109 +4168,109 @@ lgt_gen_prototype_extends_dcl_clauses :- Scope = p, Call =.. [PDcl, Pred, Scope2, Compilation, Meta, SContainer2, TContainer], Body = (Call, (Scope2 = p -> SContainer = SContainer2; SContainer = Obj)))), - assertz(lgt_dcl_((Head:-Body))), + assertz('$lgt_dcl_'((Head:-Body))), fail. -lgt_gen_prototype_extends_dcl_clauses. +'$lgt_gen_prototype_extends_dcl_clauses'. -lgt_gen_prototype_def_clauses :- - lgt_gen_local_def_clauses, - lgt_gen_obj_catchall_def_clause, - lgt_gen_prototype_linking_def_clauses, - lgt_gen_prototype_imports_def_clauses, - lgt_gen_prototype_extends_def_clauses. +'$lgt_gen_prototype_def_clauses' :- + '$lgt_gen_local_def_clauses', + '$lgt_gen_obj_catchall_def_clause', + '$lgt_gen_prototype_linking_def_clauses', + '$lgt_gen_prototype_imports_def_clauses', + '$lgt_gen_prototype_extends_def_clauses'. -lgt_gen_prototype_linking_def_clauses :- - lgt_object_(Obj, _, _, Def, _, _, _, _, DDef), +'$lgt_gen_prototype_linking_def_clauses' :- + '$lgt_object_'(Obj, _, _, Def, _, _, _, _, DDef), Head =.. [Def, Pred, Sender, This, Self, Call, Obj], Body =.. [Def, Pred, Sender, This, Self, Call], - assertz(lgt_def_((Head:-Body))), + assertz('$lgt_def_'((Head:-Body))), Body2 =.. [DDef, Pred, Sender, This, Self, Call], - assertz(lgt_def_((Head:-Body2))). + assertz('$lgt_def_'((Head:-Body2))). -lgt_gen_prototype_imports_def_clauses :- - lgt_object_(Obj, _, _, ODef, _, _, _, _, _), - lgt_rclause_(lgt_imports_category_(Obj, Ctg, _)), +'$lgt_gen_prototype_imports_def_clauses' :- + '$lgt_object_'(Obj, _, _, ODef, _, _, _, _, _), + '$lgt_rclause_'('$lgt_imports_category_'(Obj, Ctg, _)), Head =.. [ODef, Pred, Sender, Obj, Self, Call, Ctg], - lgt_imported_category_(Ctg, _, _, CDef, _), + '$lgt_imported_category_'(Ctg, _, _, CDef, _), Body =.. [CDef, Pred, Sender, Obj, Self, Call], - assertz(lgt_def_((Head:-Body))), + assertz('$lgt_def_'((Head:-Body))), fail. -lgt_gen_prototype_imports_def_clauses. +'$lgt_gen_prototype_imports_def_clauses'. -lgt_gen_prototype_extends_def_clauses :- - lgt_object_(Obj, _, _, ODef, _, _, _, _, _), - lgt_rclause_(lgt_extends_object_(Obj, Parent, _)), +'$lgt_gen_prototype_extends_def_clauses' :- + '$lgt_object_'(Obj, _, _, ODef, _, _, _, _, _), + '$lgt_rclause_'('$lgt_extends_object_'(Obj, Parent, _)), Head =.. [ODef, Pred, Sender, Obj, Self, Call, Container], - lgt_extended_object_(Parent, _, _, PDef, _, _, _, _, _, _), + '$lgt_extended_object_'(Parent, _, _, PDef, _, _, _, _, _, _), Body =.. [PDef, Pred, Sender, Parent, Self, Call, Container], - assertz(lgt_def_((Head:-Body))), + assertz('$lgt_def_'((Head:-Body))), fail. -lgt_gen_prototype_extends_def_clauses. +'$lgt_gen_prototype_extends_def_clauses'. % we can have a root object where super have nowhere to go ... -lgt_gen_prototype_super_clauses :- - lgt_object_(Obj, _, _, _, OSuper, _, _, _, _), - \+ lgt_rclause_(lgt_extends_object_(Obj, _, _)), +'$lgt_gen_prototype_super_clauses' :- + '$lgt_object_'(Obj, _, _, _, OSuper, _, _, _, _), + \+ '$lgt_rclause_'('$lgt_extends_object_'(Obj, _, _)), Head =.. [OSuper, _, _, _, _, _, _], - assertz(lgt_def_((Head:-fail))), + assertz('$lgt_def_'((Head:-fail))), !. % ... or we may extends some objects -lgt_gen_prototype_super_clauses :- - lgt_object_(Obj, _, _, _, OSuper, _, _, _, _), - lgt_rclause_(lgt_extends_object_(Obj, Parent, _)), +'$lgt_gen_prototype_super_clauses' :- + '$lgt_object_'(Obj, _, _, _, OSuper, _, _, _, _), + '$lgt_rclause_'('$lgt_extends_object_'(Obj, Parent, _)), Head =.. [OSuper, Pred, Sender, Obj, Self, Call, Container], - lgt_extended_object_(Parent, _, _, PDef, _, _, _, _, _, _), + '$lgt_extended_object_'(Parent, _, _, PDef, _, _, _, _, _, _), Body =.. [PDef, Pred, Sender, Parent, Self, Call, Container], - assertz(lgt_def_((Head:-Body))), + assertz('$lgt_def_'((Head:-Body))), fail. -lgt_gen_prototype_super_clauses. +'$lgt_gen_prototype_super_clauses'. -lgt_gen_ic_clauses :- - lgt_gen_ic_dcl_clauses, - lgt_gen_ic_idcl_clauses, - lgt_gen_ic_def_clauses, - lgt_gen_ic_idef_clauses, - lgt_gen_ic_super_clauses. +'$lgt_gen_ic_clauses' :- + '$lgt_gen_ic_dcl_clauses', + '$lgt_gen_ic_idcl_clauses', + '$lgt_gen_ic_def_clauses', + '$lgt_gen_ic_idef_clauses', + '$lgt_gen_ic_super_clauses'. -lgt_gen_ic_dcl_clauses :- - lgt_gen_local_dcl_clauses, - lgt_gen_catchall_dcl_clause, - lgt_gen_ic_hierarchy_dcl_clauses. +'$lgt_gen_ic_dcl_clauses' :- + '$lgt_gen_local_dcl_clauses', + '$lgt_gen_catchall_dcl_clause', + '$lgt_gen_ic_hierarchy_dcl_clauses'. -lgt_gen_ic_hierarchy_dcl_clauses :- - \+ lgt_instantiated_class_(_, _, _, _, _, _, _, _, _, _), +'$lgt_gen_ic_hierarchy_dcl_clauses' :- + \+ '$lgt_instantiated_class_'(_, _, _, _, _, _, _, _, _, _), !, - lgt_object_(_, _, ODcl, _, _, _, _, _, _), + '$lgt_object_'(_, _, ODcl, _, _, _, _, _, _), Head =.. [ODcl, _, _, _, _, _, _], - assertz(lgt_dcl_((Head:-fail))). + assertz('$lgt_dcl_'((Head:-fail))). -lgt_gen_ic_hierarchy_dcl_clauses :- - lgt_object_(Obj, _, ODcl, _, _, _, _, _, _), +'$lgt_gen_ic_hierarchy_dcl_clauses' :- + '$lgt_object_'(Obj, _, ODcl, _, _, _, _, _, _), Head =.. [ODcl, Pred, Scope, Compilation, Meta, SContainer, TContainer], - lgt_instantiated_class_(_, _, _, _, _, CIDcl, _, _, _, EScope), + '$lgt_instantiated_class_'(_, _, _, _, _, CIDcl, _, _, _, EScope), (EScope = (public) -> Body =.. [CIDcl, Pred, Scope, Compilation, Meta, SContainer, TContainer] ; @@ -4257,38 +4281,38 @@ lgt_gen_ic_hierarchy_dcl_clauses :- Scope = p, Call =.. [CIDcl, Pred, Scope2, Compilation, Meta, SContainer2, TContainer], Body = (Call, (Scope2 = p -> SContainer = SContainer2; SContainer = Obj)))), - assertz(lgt_dcl_((Head:-Body))), + assertz('$lgt_dcl_'((Head:-Body))), fail. -lgt_gen_ic_hierarchy_dcl_clauses. +'$lgt_gen_ic_hierarchy_dcl_clauses'. % generates instance/class inherited declaration clauses -lgt_gen_ic_idcl_clauses :- - lgt_gen_ic_linking_idcl_clauses, - lgt_gen_ic_protocol_idcl_clauses, - lgt_gen_ic_category_idcl_clauses, - lgt_gen_ic_hierarchy_idcl_clauses. +'$lgt_gen_ic_idcl_clauses' :- + '$lgt_gen_ic_linking_idcl_clauses', + '$lgt_gen_ic_protocol_idcl_clauses', + '$lgt_gen_ic_category_idcl_clauses', + '$lgt_gen_ic_hierarchy_idcl_clauses'. -lgt_gen_ic_linking_idcl_clauses :- - lgt_object_(Obj, _, Dcl, _, _, IDcl, _, DDcl, _), +'$lgt_gen_ic_linking_idcl_clauses' :- + '$lgt_object_'(Obj, _, Dcl, _, _, IDcl, _, DDcl, _), Head =.. [IDcl, Pred, Scope, Compilation, Meta, Obj, Obj], Body =.. [Dcl, Pred, Scope, Compilation, Meta], - assertz(lgt_dcl_((Head:-Body))), + assertz('$lgt_dcl_'((Head:-Body))), Body2 =.. [DDcl, Pred, Scope, Compilation, Meta], - assertz(lgt_dcl_((Head:-Body2))). + assertz('$lgt_dcl_'((Head:-Body2))). -lgt_gen_ic_protocol_idcl_clauses :- - lgt_object_(Obj, _, _, _, _, OIDcl, _, _, _), +'$lgt_gen_ic_protocol_idcl_clauses' :- + '$lgt_object_'(Obj, _, _, _, _, OIDcl, _, _, _), Head =.. [OIDcl, Pred, Scope, Compilation, Meta, Obj, Container], - lgt_implemented_protocol_(_, _, PDcl, EScope), + '$lgt_implemented_protocol_'(_, _, PDcl, EScope), (EScope = (public) -> Body =.. [PDcl, Pred, Scope, Compilation, Meta, Container] ; @@ -4298,17 +4322,17 @@ lgt_gen_ic_protocol_idcl_clauses :- ; Scope = p, Body =.. [PDcl, Pred, _, Compilation, Meta, Container])), - assertz(lgt_dcl_((Head:-Body))), + assertz('$lgt_dcl_'((Head:-Body))), fail. -lgt_gen_ic_protocol_idcl_clauses. +'$lgt_gen_ic_protocol_idcl_clauses'. -lgt_gen_ic_category_idcl_clauses :- - lgt_object_(Obj, _, _, _, _, OIDcl, _, _, _), +'$lgt_gen_ic_category_idcl_clauses' :- + '$lgt_object_'(Obj, _, _, _, _, OIDcl, _, _, _), Head =.. [OIDcl, Pred, Scope, Compilation, Meta, Obj, Container], - lgt_imported_category_(_, _, CDcl, _, EScope), + '$lgt_imported_category_'(_, _, CDcl, _, EScope), (EScope = (public) -> Body =.. [CDcl, Pred, Scope, Compilation, Meta, Container] ; @@ -4318,17 +4342,17 @@ lgt_gen_ic_category_idcl_clauses :- ; Scope = p, Body =.. [CDcl, Pred, _, Compilation, Meta, Container])), - assertz(lgt_dcl_((Head:-Body))), + assertz('$lgt_dcl_'((Head:-Body))), fail. -lgt_gen_ic_category_idcl_clauses. +'$lgt_gen_ic_category_idcl_clauses'. -lgt_gen_ic_hierarchy_idcl_clauses :- - lgt_object_(Obj, _, _, _, _, CIDcl, _, _, _), +'$lgt_gen_ic_hierarchy_idcl_clauses' :- + '$lgt_object_'(Obj, _, _, _, _, CIDcl, _, _, _), Head =.. [CIDcl, Pred, Scope, Compilation, Meta, SContainer, TContainer], - lgt_specialized_class_(_, _, _, _, _, SIDcl, _, _, _, EScope), + '$lgt_specialized_class_'(_, _, _, _, _, SIDcl, _, _, _, EScope), (EScope = (public) -> Body =.. [SIDcl, Pred, Scope, Compilation, Meta, SContainer, TContainer] ; @@ -4339,246 +4363,246 @@ lgt_gen_ic_hierarchy_idcl_clauses :- Scope = p, Call =.. [SIDcl, Pred, Scope2, Compilation, Meta, SContainer2, TContainer], Body = (Call, (Scope2 = p -> SContainer = SContainer2; SContainer = Obj)))), - assertz(lgt_dcl_((Head:-Body))), + assertz('$lgt_dcl_'((Head:-Body))), fail. -lgt_gen_ic_hierarchy_idcl_clauses. +'$lgt_gen_ic_hierarchy_idcl_clauses'. -lgt_gen_ic_def_clauses :- - lgt_gen_local_def_clauses, - lgt_gen_obj_catchall_def_clause, - lgt_gen_ic_linking_def_clauses, - lgt_gen_ic_imports_def_clauses, - lgt_gen_ic_hierarchy_def_clauses. +'$lgt_gen_ic_def_clauses' :- + '$lgt_gen_local_def_clauses', + '$lgt_gen_obj_catchall_def_clause', + '$lgt_gen_ic_linking_def_clauses', + '$lgt_gen_ic_imports_def_clauses', + '$lgt_gen_ic_hierarchy_def_clauses'. -lgt_gen_ic_linking_def_clauses :- - lgt_object_(Obj, _, _, Def, _, _, _, _, DDef), +'$lgt_gen_ic_linking_def_clauses' :- + '$lgt_object_'(Obj, _, _, Def, _, _, _, _, DDef), Head =.. [Def, Pred, Sender, This, Self, Call, Obj], Body =.. [Def, Pred, Sender, This, Self, Call], - assertz(lgt_def_((Head:-Body))), + assertz('$lgt_def_'((Head:-Body))), Body2 =.. [DDef, Pred, Sender, This, Self, Call], - assertz(lgt_def_((Head:-Body2))). + assertz('$lgt_def_'((Head:-Body2))). -lgt_gen_ic_imports_def_clauses :- - lgt_object_(Obj, _, _, ODef, _, _, _, _, _), - lgt_rclause_(lgt_imports_category_(Obj, Ctg, _)), +'$lgt_gen_ic_imports_def_clauses' :- + '$lgt_object_'(Obj, _, _, ODef, _, _, _, _, _), + '$lgt_rclause_'('$lgt_imports_category_'(Obj, Ctg, _)), Head =.. [ODef, Pred, Sender, Obj, Self, Call, Ctg], - lgt_imported_category_(Ctg, _, _, CDef, _), + '$lgt_imported_category_'(Ctg, _, _, CDef, _), Body =.. [CDef, Pred, Sender, Obj, Self, Call], - assertz(lgt_def_((Head:-Body))), + assertz('$lgt_def_'((Head:-Body))), fail. -lgt_gen_ic_imports_def_clauses. +'$lgt_gen_ic_imports_def_clauses'. -lgt_gen_ic_hierarchy_def_clauses :- - lgt_object_(Obj, _, _, ODef, _, _, _, _, _), - lgt_rclause_(lgt_instantiates_class_(Obj, Class, _)), +'$lgt_gen_ic_hierarchy_def_clauses' :- + '$lgt_object_'(Obj, _, _, ODef, _, _, _, _, _), + '$lgt_rclause_'('$lgt_instantiates_class_'(Obj, Class, _)), Head =.. [ODef, Pred, Sender, Obj, Self, Call, Container], - lgt_instantiated_class_(Class, _, _, _, _, _, CIDef, _, _, _), + '$lgt_instantiated_class_'(Class, _, _, _, _, _, CIDef, _, _, _), Body =.. [CIDef, Pred, Sender, Class, Self, Call, Container], - assertz(lgt_def_((Head:-Body))), + assertz('$lgt_def_'((Head:-Body))), fail. -lgt_gen_ic_hierarchy_def_clauses. +'$lgt_gen_ic_hierarchy_def_clauses'. -lgt_gen_ic_idef_clauses :- - lgt_gen_ic_linking_idef_clauses, - lgt_gen_ic_category_idef_clauses, - lgt_gen_ic_hierarchy_idef_clauses. +'$lgt_gen_ic_idef_clauses' :- + '$lgt_gen_ic_linking_idef_clauses', + '$lgt_gen_ic_category_idef_clauses', + '$lgt_gen_ic_hierarchy_idef_clauses'. -lgt_gen_ic_linking_idef_clauses :- - lgt_object_(Obj, _, _, Def, _, _, IDef, _, DDef), +'$lgt_gen_ic_linking_idef_clauses' :- + '$lgt_object_'(Obj, _, _, Def, _, _, IDef, _, DDef), Head =.. [IDef, Pred, Sender, This, Self, Call, Obj], Body =.. [Def, Pred, Sender, This, Self, Call], - assertz(lgt_def_((Head:-Body))), + assertz('$lgt_def_'((Head:-Body))), Body2 =.. [DDef, Pred, Sender, This, Self, Call], - assertz(lgt_def_((Head:-Body2))). + assertz('$lgt_def_'((Head:-Body2))). -lgt_gen_ic_category_idef_clauses :- - lgt_object_(Obj, _, _, _, _, _, OIDef, _, _), - lgt_rclause_(lgt_imports_category_(Obj, Ctg, _)), +'$lgt_gen_ic_category_idef_clauses' :- + '$lgt_object_'(Obj, _, _, _, _, _, OIDef, _, _), + '$lgt_rclause_'('$lgt_imports_category_'(Obj, Ctg, _)), Head =.. [OIDef, Pred, Sender, Obj, Self, Call, Ctg], - lgt_imported_category_(Ctg, _, _, CDef, _), + '$lgt_imported_category_'(Ctg, _, _, CDef, _), Body =.. [CDef, Pred, Sender, Obj, Self, Call], - assertz(lgt_def_((Head:-Body))), + assertz('$lgt_def_'((Head:-Body))), fail. -lgt_gen_ic_category_idef_clauses. +'$lgt_gen_ic_category_idef_clauses'. -lgt_gen_ic_hierarchy_idef_clauses :- - lgt_object_(Class, _, _, _, _, _, CIDef, _, _), - lgt_rclause_(lgt_specializes_class_(Class, Super, _)), +'$lgt_gen_ic_hierarchy_idef_clauses' :- + '$lgt_object_'(Class, _, _, _, _, _, CIDef, _, _), + '$lgt_rclause_'('$lgt_specializes_class_'(Class, Super, _)), Head =.. [CIDef, Pred, Sender, Class, Self, Call, Container], - lgt_specialized_class_(Super, _, _, _, _, _, SIDef, _, _, _), + '$lgt_specialized_class_'(Super, _, _, _, _, _, SIDef, _, _, _), Body =.. [SIDef, Pred, Sender, Super, Self, Call, Container], - assertz(lgt_def_((Head:-Body))), + assertz('$lgt_def_'((Head:-Body))), fail. -lgt_gen_ic_hierarchy_idef_clauses. +'$lgt_gen_ic_hierarchy_idef_clauses'. % we can have a root object where super have nowhere to go ... -lgt_gen_ic_super_clauses :- - lgt_object_(_, _, _, _, OSuper, _, _, _, _), - \+ lgt_rclause_(lgt_instantiates_class_(_, _, _)), - \+ lgt_rclause_(lgt_specializes_class_(_, _, _)), +'$lgt_gen_ic_super_clauses' :- + '$lgt_object_'(_, _, _, _, OSuper, _, _, _, _), + \+ '$lgt_rclause_'('$lgt_instantiates_class_'(_, _, _)), + \+ '$lgt_rclause_'('$lgt_specializes_class_'(_, _, _)), Head =.. [OSuper, _, _, _, _, _, _], - assertz(lgt_def_((Head:-fail))), + assertz('$lgt_def_'((Head:-fail))), !. % ... or predicates can be redefined in instances... -lgt_gen_ic_super_clauses :- - lgt_object_(Obj, _, _, _, OSuper, _, _, _, _), - lgt_rclause_(lgt_instantiates_class_(Obj, Class, _)), +'$lgt_gen_ic_super_clauses' :- + '$lgt_object_'(Obj, _, _, _, OSuper, _, _, _, _), + '$lgt_rclause_'('$lgt_instantiates_class_'(Obj, Class, _)), Head =.. [OSuper, Pred, Sender, Obj, Obj, Call, Container], - lgt_instantiated_class_(Class, _, _, _, _, _, CIDef, _, _, _), + '$lgt_instantiated_class_'(Class, _, _, _, _, _, CIDef, _, _, _), Body =.. [CIDef, Pred, Sender, Class, Obj, Call, Container], - assertz(lgt_def_((Head:-Body))), + assertz('$lgt_def_'((Head:-Body))), fail. % ... or/and in subclasses... -lgt_gen_ic_super_clauses :- - lgt_object_(Class, _, _, _, CSuper, _, _, _, _), - lgt_rclause_(lgt_specializes_class_(Class, Super, _)), +'$lgt_gen_ic_super_clauses' :- + '$lgt_object_'(Class, _, _, _, CSuper, _, _, _, _), + '$lgt_rclause_'('$lgt_specializes_class_'(Class, Super, _)), Head =.. [CSuper, Pred, Sender, Class, Self, Call, Container], - lgt_specialized_class_(Super, _, _, _, _, _, SIDef, _, _, _), + '$lgt_specialized_class_'(Super, _, _, _, _, _, SIDef, _, _, _), Body =.. [SIDef, Pred, Sender, Super, Self, Call, Container], - assertz(lgt_def_((Head:-Body))), + assertz('$lgt_def_'((Head:-Body))), fail. -lgt_gen_ic_super_clauses. +'$lgt_gen_ic_super_clauses'. -% lgt_fix_redef_built_ins +% '$lgt_fix_redef_built_ins' % % fix the calls of any redefined built-in predicate in all entity clauses % and initialization goals -lgt_fix_redef_built_ins :- - retract(lgt_eclause_(Clause)), - lgt_fix_redef_built_ins(Clause, Fixed), - assertz(lgt_feclause_(Fixed)), +'$lgt_fix_redef_built_ins' :- + retract('$lgt_eclause_'(Clause)), + '$lgt_fix_redef_built_ins'(Clause, Fixed), + assertz('$lgt_feclause_'(Fixed)), fail. -lgt_fix_redef_built_ins :- - retract(lgt_entity_init_(Call)), - lgt_fix_redef_built_ins(Call, Fixed), - assertz(lgt_fentity_init_(Fixed)), +'$lgt_fix_redef_built_ins' :- + retract('$lgt_entity_init_'(Call)), + '$lgt_fix_redef_built_ins'(Call, Fixed), + assertz('$lgt_fentity_init_'(Fixed)), fail. -lgt_fix_redef_built_ins. +'$lgt_fix_redef_built_ins'. -% lgt_fix_redef_built_ins(+clause, -clause) +% '$lgt_fix_redef_built_ins'(+clause, -clause) -lgt_fix_redef_built_ins((Head:-Body), (Head:-Fixed)) :- +'$lgt_fix_redef_built_ins'((Head:-Body), (Head:-Fixed)) :- !, - lgt_fix_redef_built_ins(Body, Fixed). + '$lgt_fix_redef_built_ins'(Body, Fixed). -lgt_fix_redef_built_ins((Pred1, Pred2), (TPred1, TPred2)) :- +'$lgt_fix_redef_built_ins'((Pred1, Pred2), (TPred1, TPred2)) :- !, - lgt_fix_redef_built_ins(Pred1, TPred1), - lgt_fix_redef_built_ins(Pred2, TPred2). + '$lgt_fix_redef_built_ins'(Pred1, TPred1), + '$lgt_fix_redef_built_ins'(Pred2, TPred2). -lgt_fix_redef_built_ins((Pred1; Pred2), (TPred1; TPred2)) :- +'$lgt_fix_redef_built_ins'((Pred1; Pred2), (TPred1; TPred2)) :- !, - lgt_fix_redef_built_ins(Pred1, TPred1), - lgt_fix_redef_built_ins(Pred2, TPred2). + '$lgt_fix_redef_built_ins'(Pred1, TPred1), + '$lgt_fix_redef_built_ins'(Pred2, TPred2). -lgt_fix_redef_built_ins((Pred1 -> Pred2), (TPred1 -> TPred2)) :- +'$lgt_fix_redef_built_ins'((Pred1 -> Pred2), (TPred1 -> TPred2)) :- !, - lgt_fix_redef_built_ins(Pred1, TPred1), - lgt_fix_redef_built_ins(Pred2, TPred2). + '$lgt_fix_redef_built_ins'(Pred1, TPred1), + '$lgt_fix_redef_built_ins'(Pred2, TPred2). -lgt_fix_redef_built_ins(\+ Pred, \+ TPred) :- +'$lgt_fix_redef_built_ins'(\+ Pred, \+ TPred) :- !, - lgt_fix_redef_built_ins(Pred, TPred). + '$lgt_fix_redef_built_ins'(Pred, TPred). -lgt_fix_redef_built_ins(call(Pred), call(TPred)) :- +'$lgt_fix_redef_built_ins'(call(Pred), call(TPred)) :- !, - lgt_fix_redef_built_ins(Pred, TPred). + '$lgt_fix_redef_built_ins'(Pred, TPred). -lgt_fix_redef_built_ins(once(Pred), once(TPred)) :- +'$lgt_fix_redef_built_ins'(once(Pred), once(TPred)) :- !, - lgt_fix_redef_built_ins(Pred, TPred). + '$lgt_fix_redef_built_ins'(Pred, TPred). -lgt_fix_redef_built_ins(catch(Goal, Catcher, Recovery), catch(TGoal, Catcher, TRecovery)) :- +'$lgt_fix_redef_built_ins'(catch(Goal, Catcher, Recovery), catch(TGoal, Catcher, TRecovery)) :- !, - lgt_fix_redef_built_ins(Goal, TGoal), - lgt_fix_redef_built_ins(Recovery, TRecovery). + '$lgt_fix_redef_built_ins'(Goal, TGoal), + '$lgt_fix_redef_built_ins'(Recovery, TRecovery). -lgt_fix_redef_built_ins(bagof(Term, Pred, List), bagof(Term, TPred, List)) :- +'$lgt_fix_redef_built_ins'(bagof(Term, Pred, List), bagof(Term, TPred, List)) :- !, - lgt_fix_redef_built_ins(Pred, TPred). + '$lgt_fix_redef_built_ins'(Pred, TPred). -lgt_fix_redef_built_ins(findall(Term, Pred, List), findall(Term, TPred, List)) :- +'$lgt_fix_redef_built_ins'(findall(Term, Pred, List), findall(Term, TPred, List)) :- !, - lgt_fix_redef_built_ins(Pred, TPred). + '$lgt_fix_redef_built_ins'(Pred, TPred). -lgt_fix_redef_built_ins(forall(Generate, Test), forall(TGenerate, TTest)) :- +'$lgt_fix_redef_built_ins'(forall(Generate, Test), forall(TGenerate, TTest)) :- !, - lgt_fix_redef_built_ins(Generate, TGenerate), - lgt_fix_redef_built_ins(Test, TTest). + '$lgt_fix_redef_built_ins'(Generate, TGenerate), + '$lgt_fix_redef_built_ins'(Test, TTest). -lgt_fix_redef_built_ins(setof(Term, Pred, List), setof(Term, TPred, List)) :- +'$lgt_fix_redef_built_ins'(setof(Term, Pred, List), setof(Term, TPred, List)) :- !, - lgt_fix_redef_built_ins(Pred, TPred). + '$lgt_fix_redef_built_ins'(Pred, TPred). -lgt_fix_redef_built_ins(lgt_call_built_in(Pred, Context), TPred) :- +'$lgt_fix_redef_built_ins'('$lgt_call_built_in'(Pred, Context), TPred) :- !, - (lgt_redefined_built_in_(Pred, Context, TPred) -> + ('$lgt_redefined_built_in_'(Pred, Context, TPred) -> true ; - lgt_fix_redef_built_ins(Pred, TPred)). + '$lgt_fix_redef_built_ins'(Pred, TPred)). -lgt_fix_redef_built_ins(Pred, Pred). +'$lgt_fix_redef_built_ins'(Pred, Pred). % find and report misspelt predicate calls % in the body of objects/cartegories predicates -lgt_find_misspelt_calls :- +'$lgt_find_misspelt_calls' :- setof(Pred, - (lgt_calls_pred_(Pred), \+ lgt_defs_pred_(Pred), \+ lgt_dynamic_(Pred)), + ('$lgt_calls_pred_'(Pred), \+ '$lgt_defs_pred_'(Pred), \+ '$lgt_dynamic_'(Pred)), Preds) -> - lgt_report_misspelt_calls(Preds) + '$lgt_report_misspelt_calls'(Preds) ; true. -% lgt_report_misspelt_calls(+list) +% '$lgt_report_misspelt_calls'(+list) -lgt_report_misspelt_calls([]). +'$lgt_report_misspelt_calls'([]). -lgt_report_misspelt_calls([Pred| Preds]) :- - (lgt_compiler_option(misspelt, warning), - lgt_compiler_option(report, on)) -> +'$lgt_report_misspelt_calls'([Pred| Preds]) :- + ('$lgt_compiler_option'(misspelt, warning), + '$lgt_compiler_option'(report, on)) -> write('WARNING! these static predicates are called but never defined: '), writeq([Pred| Preds]), nl ; @@ -4586,113 +4610,113 @@ lgt_report_misspelt_calls([Pred| Preds]) :- -% lgt_write_directives(+stream) +% '$lgt_write_directives'(+stream) % % writes the directives -lgt_write_directives(Stream) :- - lgt_directive_(Dir), +'$lgt_write_directives'(Stream) :- + '$lgt_directive_'(Dir), write_canonical(Stream, (:- Dir)), write(Stream, '.'), nl(Stream), fail. -lgt_write_directives(_). +'$lgt_write_directives'(_). -lgt_write_clauses(Stream) :- - lgt_write_functors_clause(Stream), - lgt_write_dcl_clauses(Stream), - lgt_write_def_clauses(Stream), - lgt_write_ddef_clauses(Stream), - lgt_write_super_clauses(Stream), - lgt_write_entity_clauses(Stream). +'$lgt_write_clauses'(Stream) :- + '$lgt_write_functors_clause'(Stream), + '$lgt_write_dcl_clauses'(Stream), + '$lgt_write_def_clauses'(Stream), + '$lgt_write_ddef_clauses'(Stream), + '$lgt_write_super_clauses'(Stream), + '$lgt_write_entity_clauses'(Stream). -lgt_write_functors_clause(Stream) :- - lgt_entity_functors_(Clause), +'$lgt_write_functors_clause'(Stream) :- + '$lgt_entity_functors_'(Clause), write_canonical(Stream, Clause), write(Stream, '.'), nl(Stream). -lgt_write_def_clauses(Stream) :- - lgt_def_(Clause), +'$lgt_write_def_clauses'(Stream) :- + '$lgt_def_'(Clause), write_canonical(Stream, Clause), write(Stream, '.'), nl(Stream), fail. -lgt_write_def_clauses(_). +'$lgt_write_def_clauses'(_). -lgt_write_ddef_clauses(Stream) :- - lgt_ddef_(Clause), +'$lgt_write_ddef_clauses'(Stream) :- + '$lgt_ddef_'(Clause), write_canonical(Stream, Clause), write(Stream, '.'), nl(Stream), fail. -lgt_write_ddef_clauses(_). +'$lgt_write_ddef_clauses'(_). -lgt_write_dcl_clauses(Stream) :- - lgt_dcl_(Clause), +'$lgt_write_dcl_clauses'(Stream) :- + '$lgt_dcl_'(Clause), write_canonical(Stream, Clause), write(Stream, '.'), nl(Stream), fail. -lgt_write_dcl_clauses(_). +'$lgt_write_dcl_clauses'(_). -lgt_write_super_clauses(Stream) :- - lgt_super_(Clause), +'$lgt_write_super_clauses'(Stream) :- + '$lgt_super_'(Clause), write_canonical(Stream, Clause), write(Stream, '.'), nl(Stream), fail. -lgt_write_super_clauses(_). +'$lgt_write_super_clauses'(_). -lgt_write_entity_clauses(Stream) :- - lgt_feclause_(Clause), +'$lgt_write_entity_clauses'(Stream) :- + '$lgt_feclause_'(Clause), write_canonical(Stream, Clause), write(Stream, '.'), nl(Stream), fail. -lgt_write_entity_clauses(_). +'$lgt_write_entity_clauses'(_). -% lgt_write_init_call(+stream) +% '$lgt_write_init_call'(+stream) % % writes the initialization call for the compiled entity that will assert % the relation clauses and call any declared initialization goal when the % entity is loaded -lgt_write_init_call(Stream) :- - lgt_compiler_option(iso_initialization_dir, true), +'$lgt_write_init_call'(Stream) :- + '$lgt_compiler_option'(iso_initialization_dir, true), !, - findall(Clause, lgt_rclause_(Clause), Clauses), - (lgt_fentity_init_(Call) -> - write_canonical(Stream, (:- initialization((lgt_assert_relation_clauses(Clauses), Call)))) + findall(Clause, '$lgt_rclause_'(Clause), Clauses), + ('$lgt_fentity_init_'(Call) -> + write_canonical(Stream, (:- initialization(('$lgt_assert_relation_clauses'(Clauses), Call)))) ; - write_canonical(Stream, (:- initialization(lgt_assert_relation_clauses(Clauses))))), + write_canonical(Stream, (:- initialization('$lgt_assert_relation_clauses'(Clauses))))), write(Stream, '.'), nl(Stream). -lgt_write_init_call(Stream) :- - findall(Clause, lgt_rclause_(Clause), Clauses), - write_canonical(Stream, (:- initialization(lgt_assert_relation_clauses(Clauses)))), +'$lgt_write_init_call'(Stream) :- + findall(Clause, '$lgt_rclause_'(Clause), Clauses), + write_canonical(Stream, (:- initialization('$lgt_assert_relation_clauses'(Clauses)))), write(Stream, '.'), nl(Stream), - (lgt_fentity_init_(Call) -> + ('$lgt_fentity_init_'(Call) -> write_canonical(Stream, (:- Call)), write(Stream, '.'), nl(Stream) @@ -4701,112 +4725,112 @@ lgt_write_init_call(Stream) :- -% lgt_assert_tr_entity +% '$lgt_assert_tr_entity' % % adds a dynamically created entity to memory -lgt_assert_tr_entity :- - lgt_assert_directives, - lgt_assert_functors_clause, - lgt_assert_dcl_clauses, - lgt_assert_def_clauses, - lgt_assert_ddef_clauses, - lgt_assert_super_clauses, - lgt_assert_entity_clauses, - lgt_assert_relation_clauses, - lgt_assert_init. +'$lgt_assert_tr_entity' :- + '$lgt_assert_directives', + '$lgt_assert_functors_clause', + '$lgt_assert_dcl_clauses', + '$lgt_assert_def_clauses', + '$lgt_assert_ddef_clauses', + '$lgt_assert_super_clauses', + '$lgt_assert_entity_clauses', + '$lgt_assert_relation_clauses', + '$lgt_assert_init'. -lgt_assert_directives :- - lgt_directive_((dynamic(Functor/Arity))), +'$lgt_assert_directives' :- + '$lgt_directive_'((dynamic(Functor/Arity))), functor(Pred, Functor, Arity), asserta(Pred), retractall(Pred), fail. -lgt_assert_directives :- - lgt_directive_((op(Priority, Specifier, Operators))), +'$lgt_assert_directives' :- + '$lgt_directive_'((op(Priority, Specifier, Operators))), op(Priority, Specifier, Operators), fail. -lgt_assert_directives. +'$lgt_assert_directives'. -lgt_assert_functors_clause :- - lgt_entity_functors_(Clause), +'$lgt_assert_functors_clause' :- + '$lgt_entity_functors_'(Clause), assertz(Clause). -lgt_assert_dcl_clauses :- - lgt_dcl_(Clause), +'$lgt_assert_dcl_clauses' :- + '$lgt_dcl_'(Clause), assertz(Clause), fail. -lgt_assert_dcl_clauses. +'$lgt_assert_dcl_clauses'. -lgt_assert_def_clauses :- - lgt_def_(Clause), +'$lgt_assert_def_clauses' :- + '$lgt_def_'(Clause), assertz(Clause), fail. -lgt_assert_def_clauses. +'$lgt_assert_def_clauses'. -lgt_assert_ddef_clauses :- - lgt_ddef_(Clause), +'$lgt_assert_ddef_clauses' :- + '$lgt_ddef_'(Clause), assertz(Clause), fail. -lgt_assert_ddef_clauses. +'$lgt_assert_ddef_clauses'. -lgt_assert_super_clauses :- - lgt_super_(Clause), +'$lgt_assert_super_clauses' :- + '$lgt_super_'(Clause), assertz(Clause), fail. -lgt_assert_super_clauses. +'$lgt_assert_super_clauses'. -lgt_assert_entity_clauses :- - lgt_feclause_(Clause), +'$lgt_assert_entity_clauses' :- + '$lgt_feclause_'(Clause), assertz(Clause), fail. -lgt_assert_entity_clauses. +'$lgt_assert_entity_clauses'. -lgt_assert_relation_clauses :- - lgt_rclause_(Clause), +'$lgt_assert_relation_clauses' :- + '$lgt_rclause_'(Clause), assertz(Clause), fail. -lgt_assert_relation_clauses. +'$lgt_assert_relation_clauses'. -% lgt_assert_init +% '$lgt_assert_init' % % call any defined initialization goal for a dynamically created entity -lgt_assert_init :- - lgt_fentity_init_(Goal) -> +'$lgt_assert_init' :- + '$lgt_fentity_init_'(Goal) -> once(Goal) ; true. -% lgt_assert_relation_clauses(+list) +% '$lgt_assert_relation_clauses'(+list) % % called when loading a compiled Logtalk entity to update Logtalk % internal tables @@ -4814,42 +4838,44 @@ lgt_assert_init :- % we may be reloading the entity so we must first retract any old % relation clauses before asserting the new ones -lgt_assert_relation_clauses([Clause| Clauses]) :- +'$lgt_assert_relation_clauses'([Clause| Clauses]) :- arg(1, Clause, Entity), - lgt_retract_old_relation_clauses(Entity), - lgt_assert_new_relation_clauses([Clause| Clauses]). + '$lgt_retract_old_relation_clauses'(Entity), + '$lgt_assert_new_relation_clauses'([Clause| Clauses]). -lgt_retract_old_relation_clauses(Entity) :- - retractall(lgt_current_object_(Entity, _, _, _, _)), - retractall(lgt_current_protocol_(Entity, _)), - retractall(lgt_current_category_(Entity, _)), - retractall(lgt_implements_protocol_(Entity, _, _)), - retractall(lgt_imports_category_(Entity, _, _)), - retractall(lgt_instantiates_class_(Entity, _, _)), - retractall(lgt_specializes_class_(Entity, _, _)), - retractall(lgt_extends_protocol_(Entity, _, _)), - retractall(lgt_extends_object_(Entity, _, _)). +'$lgt_retract_old_relation_clauses'(Entity) :- + retractall('$lgt_current_object_'(Entity, _, _, _, _)), + retractall('$lgt_current_protocol_'(Entity, _)), + retractall('$lgt_current_category_'(Entity, _)), + retractall('$lgt_implements_protocol_'(Entity, _, _)), + retractall('$lgt_imports_category_'(Entity, _, _)), + retractall('$lgt_instantiates_class_'(Entity, _, _)), + retractall('$lgt_specializes_class_'(Entity, _, _)), + retractall('$lgt_extends_protocol_'(Entity, _, _)), + retractall('$lgt_extends_object_'(Entity, _, _)). -lgt_assert_new_relation_clauses([]). +'$lgt_assert_new_relation_clauses'([]). -lgt_assert_new_relation_clauses([Clause| Clauses]) :- +'$lgt_assert_new_relation_clauses'([Clause| Clauses]) :- assertz(Clause), - lgt_assert_new_relation_clauses(Clauses). + '$lgt_assert_new_relation_clauses'(Clauses). -% lgt_construct_object_functors(+compound, -atom, -atom, -atom, -atom, -atom, -atom, -atom, -atom) +% '$lgt_construct_object_functors'(+compound, -atom, -atom, -atom, -atom, -atom, -atom, -atom, -atom) % % constructs all the functors used in the compiled code of an object -lgt_construct_object_functors(Obj, Prefix, Dcl, Def, Super, IDcl, IDef, DDcl, DDef) :- +'$lgt_construct_object_functors'(Obj, Prefix, Dcl, Def, Super, IDcl, IDef, DDcl, DDef) :- + '$lgt_compiler_option'(code_prefix, Code), functor(Obj, Functor, Arity), number_codes(Arity, Codes), atom_codes(Atom, Codes), atom_concat(Functor, Atom, Aux), - atom_concat(Aux, '_', Prefix), + atom_concat(Code, Aux, Aux2), + atom_concat(Aux2, '_', Prefix), atom_concat(Prefix, '_dcl', Dcl), atom_concat(Prefix, '_def', Def), atom_concat(Prefix, '_super', Super), @@ -4860,40 +4886,44 @@ lgt_construct_object_functors(Obj, Prefix, Dcl, Def, Super, IDcl, IDef, DDcl, DD -% lgt_construct_protocol_functors(+compound, -atom, -atom) +% '$lgt_construct_protocol_functors'(+compound, -atom, -atom) % % constructs all the functors used in the compiled code of a protocol -lgt_construct_protocol_functors(Ptc, Prefix, Dcl) :- +'$lgt_construct_protocol_functors'(Ptc, Prefix, Dcl) :- + '$lgt_compiler_option'(code_prefix, Code), functor(Ptc, Functor, Arity), number_codes(Arity, Codes), atom_codes(Atom, Codes), atom_concat(Functor, Atom, Aux), - atom_concat(Aux, '_', Prefix), + atom_concat(Code, Aux, Aux2), + atom_concat(Aux2, '_', Prefix), atom_concat(Prefix, '_dcl', Dcl). -% lgt_construct_category_functors(+compound, -atom, -atom, -atom) +% '$lgt_construct_category_functors'(+compound, -atom, -atom, -atom) % % constructs all the functors used in the compiled code of a category -lgt_construct_category_functors(Ctg, Prefix, Dcl, Def) :- +'$lgt_construct_category_functors'(Ctg, Prefix, Dcl, Def) :- + '$lgt_compiler_option'(code_prefix, Code), functor(Ctg, Functor, Arity), number_codes(Arity, Codes), atom_codes(Atom, Codes), atom_concat(Functor, Atom, Aux), - atom_concat(Aux, '_', Prefix), + atom_concat(Code, Aux, Aux2), + atom_concat(Aux2, '_', Prefix), atom_concat(Prefix, '_dcl', Dcl), atom_concat(Prefix, '_def', Def). -% lgt_construct_predicate_functor(+atom, +atom, +integer, -atom) +% '$lgt_construct_predicate_functor'(+atom, +atom, +integer, -atom) % % constructs the functor used for a compiled predicate -lgt_construct_predicate_functor(EPrefix, Functor, Arity, PPrefix) :- +'$lgt_construct_predicate_functor'(EPrefix, Functor, Arity, PPrefix) :- atom_concat(EPrefix, Functor, Aux), number_codes(Arity, Codes), atom_codes(Atom, Codes), @@ -4901,181 +4931,182 @@ lgt_construct_predicate_functor(EPrefix, Functor, Arity, PPrefix) :- -% lgt_built_in(+callable) +% '$lgt_built_in'(+callable) % % checks if the argument is either a Prolog or Logtalk built-in predicate -lgt_built_in(Pred) :- - lgt_pl_built_in(Pred). +'$lgt_built_in'(Pred) :- + '$lgt_pl_built_in'(Pred). -lgt_built_in(Pred) :- - lgt_lgt_built_in(Pred). +'$lgt_built_in'(Pred) :- + '$lgt_lgt_built_in'(Pred). -% lgt_pl_built_in(+callable) +% '$lgt_pl_built_in'(+callable) % % either host Prolog native built-ins or missing ISO built-ins % that we have defined in the correspondent config file -lgt_pl_built_in(Pred) :- - lgt_predicate_property(Pred, built_in). +'$lgt_pl_built_in'(Pred) :- + '$lgt_predicate_property'(Pred, built_in). -lgt_pl_built_in(Pred) :- - lgt_iso_predicate(Pred). +'$lgt_pl_built_in'(Pred) :- + '$lgt_iso_predicate'(Pred). % logtalk built-in methods % -% lgt_built_in_method(?callable, ?scope) +% '$lgt_built_in_method'(?callable, ?scope) -lgt_built_in_method(parameter(_, _), p). -lgt_built_in_method(self(_), p). -lgt_built_in_method(sender(_), p). -lgt_built_in_method(this(_), p). +'$lgt_built_in_method'(parameter(_, _), p). +'$lgt_built_in_method'(self(_), p). +'$lgt_built_in_method'(sender(_), p). +'$lgt_built_in_method'(this(_), p). -lgt_built_in_method(current_predicate(_), p(p(p))). -lgt_built_in_method(predicate_property(_, _), p(p(p))). +'$lgt_built_in_method'(current_predicate(_), p(p(p))). +'$lgt_built_in_method'(predicate_property(_, _), p(p(p))). -lgt_built_in_method(abolish(_), p(p(p))). -lgt_built_in_method(asserta(_), p(p(p))). -lgt_built_in_method(assertz(_), p(p(p))). -lgt_built_in_method(clause(_, _), p(p(p))). -lgt_built_in_method(retract(_), p(p(p))). -lgt_built_in_method(retractall(_), p(p(p))). +'$lgt_built_in_method'(abolish(_), p(p(p))). +'$lgt_built_in_method'(asserta(_), p(p(p))). +'$lgt_built_in_method'(assertz(_), p(p(p))). +'$lgt_built_in_method'(clause(_, _), p(p(p))). +'$lgt_built_in_method'(retract(_), p(p(p))). +'$lgt_built_in_method'(retractall(_), p(p(p))). -lgt_built_in_method(bagof(_, _, _), p(p(p))). -lgt_built_in_method(findall(_, _, _), p(p(p))). -lgt_built_in_method(forall(_, _), p(p(p))). -lgt_built_in_method(setof(_, _, _), p(p(p))). +'$lgt_built_in_method'(bagof(_, _, _), p(p(p))). +'$lgt_built_in_method'(findall(_, _, _), p(p(p))). +'$lgt_built_in_method'(forall(_, _), p(p(p))). +'$lgt_built_in_method'(setof(_, _, _), p(p(p))). % Logtalk directives % -% lgt_lgt_directive(+atom/+integer) +% '$lgt_lgt_directive'(+atom/+integer) -lgt_lgt_directive(Directive) :- - lgt_lgt_opening_directive(Directive). +'$lgt_lgt_directive'(Directive) :- + '$lgt_lgt_opening_directive'(Directive). -lgt_lgt_directive(Directive) :- - lgt_lgt_closing_directive(Directive). +'$lgt_lgt_directive'(Directive) :- + '$lgt_lgt_closing_directive'(Directive). -lgt_lgt_directive(Directive) :- - lgt_lgt_entity_directive(Directive). +'$lgt_lgt_directive'(Directive) :- + '$lgt_lgt_entity_directive'(Directive). -lgt_lgt_directive(Directive) :- - lgt_lgt_predicate_directive(Directive). +'$lgt_lgt_directive'(Directive) :- + '$lgt_lgt_predicate_directive'(Directive). -lgt_lgt_opening_directive(object/1). -lgt_lgt_opening_directive(object/2). -lgt_lgt_opening_directive(object/3). -lgt_lgt_opening_directive(object/4). +'$lgt_lgt_opening_directive'(object/1). +'$lgt_lgt_opening_directive'(object/2). +'$lgt_lgt_opening_directive'(object/3). +'$lgt_lgt_opening_directive'(object/4). -lgt_lgt_opening_directive(category/1). -lgt_lgt_opening_directive(category/2). +'$lgt_lgt_opening_directive'(category/1). +'$lgt_lgt_opening_directive'(category/2). -lgt_lgt_opening_directive(protocol/1). -lgt_lgt_opening_directive(protocol/2). +'$lgt_lgt_opening_directive'(protocol/1). +'$lgt_lgt_opening_directive'(protocol/2). -lgt_lgt_closing_directive(end_object/0). +'$lgt_lgt_closing_directive'(end_object/0). -lgt_lgt_closing_directive(end_category/0). +'$lgt_lgt_closing_directive'(end_category/0). -lgt_lgt_closing_directive(end_protocol/0). +'$lgt_lgt_closing_directive'(end_protocol/0). -lgt_lgt_entity_directive(calls/N) :- +'$lgt_lgt_entity_directive'(calls/N) :- N >= 1. -lgt_lgt_entity_directive(uses/N) :- +'$lgt_lgt_entity_directive'(uses/N) :- N >= 1. -lgt_lgt_entity_directive((initialization)/1). +'$lgt_lgt_entity_directive'((initialization)/1). -lgt_lgt_entity_directive((dynamic)/N) :- +'$lgt_lgt_entity_directive'((dynamic)/N) :- N =:= 0. -lgt_lgt_entity_directive(op/3). +'$lgt_lgt_entity_directive'(op/3). -lgt_lgt_entity_directive(info/1). -lgt_lgt_entity_directive(info/2). +'$lgt_lgt_entity_directive'(info/1). -lgt_lgt_predicate_directive((dynamic)/N) :- +'$lgt_lgt_predicate_directive'((dynamic)/N) :- N >= 1. -lgt_lgt_predicate_directive(metapredicate/N) :- +'$lgt_lgt_predicate_directive'(metapredicate/N) :- N >= 1. -lgt_lgt_predicate_directive((discontiguous)/N) :- +'$lgt_lgt_predicate_directive'((discontiguous)/N) :- N >= 1. -lgt_lgt_predicate_directive((public)/N) :- +'$lgt_lgt_predicate_directive'((public)/N) :- N >= 1. -lgt_lgt_predicate_directive(protected/N) :- +'$lgt_lgt_predicate_directive'(protected/N) :- N >= 1. -lgt_lgt_predicate_directive(private/N) :- +'$lgt_lgt_predicate_directive'(private/N) :- N >= 1. -lgt_lgt_predicate_directive((mode)/2). +'$lgt_lgt_predicate_directive'((mode)/2). + +'$lgt_lgt_predicate_directive'(info/2). % built-in Prolog metapredicates -lgt_pl_metapredicate(catch(::, *, ::)). +'$lgt_pl_metapredicate'(catch(::, *, ::)). -lgt_pl_metapredicate(bagof(*, ::, *)). -lgt_pl_metapredicate(setof(*, ::, *)). -lgt_pl_metapredicate(findall(*, ::, *)). +'$lgt_pl_metapredicate'(bagof(*, ::, *)). +'$lgt_pl_metapredicate'(setof(*, ::, *)). +'$lgt_pl_metapredicate'(findall(*, ::, *)). -lgt_pl_metapredicate(forall(::, ::)). +'$lgt_pl_metapredicate'(forall(::, ::)). -lgt_pl_metapredicate(call(::)). -lgt_pl_metapredicate(once(::)). +'$lgt_pl_metapredicate'(call(::)). +'$lgt_pl_metapredicate'(once(::)). -lgt_pl_metapredicate(\+ (::)). +'$lgt_pl_metapredicate'(\+ (::)). % utility predicates used during compilation of Logtalk % entities to store and access context information -lgt_context(context(_, _, _, _, _)). +'$lgt_context'(context(_, _, _, _, _)). -lgt_sender(context(Sender, _, _, _, _), Sender). +'$lgt_sender'(context(Sender, _, _, _, _), Sender). -lgt_this(context(_, This, _, _, _), This). +'$lgt_this'(context(_, This, _, _, _), This). -lgt_self(context(_, _, Self, _, _), Self). +'$lgt_self'(context(_, _, Self, _, _), Self). -lgt_prefix(context(_, _, _, Prefix, _), Prefix). +'$lgt_prefix'(context(_, _, _, Prefix, _), Prefix). -lgt_metavars(context(_, _, _, _, Metavars), Metavars). +'$lgt_metavars'(context(_, _, _, _, Metavars), Metavars). -% lgt_convert_to_list(+pi_or_pi_list, -pi_list) +% '$lgt_convert_to_list'(+pi_or_pi_list, -pi_list) -lgt_convert_to_list([[A|B]], [A|B]) :- % predicate indicator list +'$lgt_convert_to_list'([[A|B]], [A|B]) :- % predicate indicator list !. -lgt_convert_to_list([A|B], [A|B]) :- % predicate indicator sequence +'$lgt_convert_to_list'([A|B], [A|B]) :- % predicate indicator sequence !. -lgt_convert_to_list(A, [A]). % single predicate indicator +'$lgt_convert_to_list'(A, [A]). % single predicate indicator -% lgt_valid_pred_ind(@term) +% '$lgt_valid_pred_ind(@term) -lgt_valid_pred_ind(Term) :- +'$lgt_valid_pred_ind'(Term) :- nonvar(Term), Term = Functor/Arity, atom(Functor), @@ -5083,267 +5114,275 @@ lgt_valid_pred_ind(Term) :- Arity >= 0. -% lgt_valid_object_id(@term) +% '$lgt_valid_object_id'(@term) -lgt_valid_object_id(Term) :- +'$lgt_valid_object_id'(Term) :- once((atom(Term); compound(Term))). -% lgt_valid_category_id(@term) +% '$lgt_valid_category_id'(@term) -lgt_valid_category_id(Term) :- +'$lgt_valid_category_id'(Term) :- atom(Term). -% lgt_valid_protocol_id(@term) +% '$lgt_valid_protocol_id'(@term) -lgt_valid_protocol_id(Term) :- +'$lgt_valid_protocol_id'(Term) :- atom(Term). -% lgt_valid_scope(@term) +% '$lgt_valid_scope'(@term) -lgt_valid_scope(Term) :- +'$lgt_valid_scope'(Term) :- nonvar(Term), (Term = (Scope::_) -> nonvar(Scope), - once(lgt_member(Scope, [(public), protected, private])) + once('$lgt_member'(Scope, [(public), protected, private])) ; true). -% lgt_scope_id(+term, -atom, -term) +% '$lgt_scope_id'(+term, -atom, -term) -lgt_scope_id(Scope::Entity, Scope, Entity) :- +'$lgt_scope_id'(Scope::Entity, Scope, Entity) :- !. -lgt_scope_id(Entity, (public), Entity). +'$lgt_scope_id'(Entity, (public), Entity). -% lgt_callable(@term) +% '$lgt_callable'(@term) -lgt_callable(Term) :- +'$lgt_callable'(Term) :- nonvar(Term), functor(Term, Functor, _), atom(Functor). -% lgt_valid_op_priority(@term) +% '$lgt_valid_op_priority'(@term) -lgt_valid_op_priority(Priority) :- +'$lgt_valid_op_priority'(Priority) :- integer(Priority), Priority >= 0, Priority =< 1200. -% lgt_valid_op_specifier(@term) +% '$lgt_valid_op_specifier'(@term) -lgt_valid_op_specifier(Specifier) :- +'$lgt_valid_op_specifier'(Specifier) :- nonvar(Specifier), - once(lgt_member(Specifier, [fx, fy, xfx, xfy, yfx, xf, yf])). + once('$lgt_member'(Specifier, [fx, fy, xfx, xfy, yfx, xf, yf])). -% lgt_valid_op_names(@term) +% '$lgt_valid_op_names'(@term) -lgt_valid_op_names(Operators) :- +'$lgt_valid_op_names'(Operators) :- nonvar(Operators), - lgt_convert_to_list(Operators, List), - forall(lgt_member(Operator, List), atom(Operator)). + '$lgt_convert_to_list'(Operators, List), + forall('$lgt_member'(Operator, List), atom(Operator)). -% lgt_valid_metapred_term(@term) +% '$lgt_valid_metapred_term'(@term) -lgt_valid_metapred_term(Pred) :- +'$lgt_valid_metapred_term'(Pred) :- nonvar(Pred), Pred =.. [_| Args], - forall(lgt_member(Arg, Args), (nonvar(Arg), (Arg = (::); Arg = (*)))). + forall('$lgt_member'(Arg, Args), (nonvar(Arg), (Arg = (::); Arg = (*)))). -% lgt_valid_mode_term(@term) +% '$lgt_valid_mode_term'(@term) -lgt_valid_mode_term(Pred) :- +'$lgt_valid_mode_term'(Pred) :- nonvar(Pred), Pred =.. [_| Args], forall( - lgt_member(Arg, Args), - (nonvar(Arg), functor(Arg, Functor, Arity), Arity =< 1, lgt_member(Functor, [?, +, -, @]))). + '$lgt_member'(Arg, Args), + (nonvar(Arg), functor(Arg, Functor, Arity), Arity =< 1, '$lgt_member'(Functor, [?, +, -, @]))). -% lgt_valid_number_of_solutions(@term) +% '$lgt_valid_number_of_solutions'(@term) -lgt_valid_number_of_solutions(Solutions) :- +'$lgt_valid_number_of_solutions'(Solutions) :- nonvar(Solutions), - once(lgt_member(Solutions, [zero, one, zero_or_one, zero_or_more, one_or_more, error])). + once('$lgt_member'(Solutions, [zero, one, zero_or_one, zero_or_more, one_or_more, error])). -% lgt_valid_info_list(@list) +% '$lgt_valid_info_list'(@list) % % true if the argument is a list of key-value pairs -lgt_valid_info_list([]). +'$lgt_valid_info_list'([]). -lgt_valid_info_list([Head| Tail]) :- +'$lgt_valid_info_list'([Head| Tail]) :- nonvar(Head), Head = (Key is Value), nonvar(Key), nonvar(Value), - lgt_valid_info_list(Tail). + '$lgt_valid_info_list'(Tail). -% lgt_valid_compiler_options(@list) +% '$lgt_valid_compiler_options'(@list) % % true if all compiler options are valid -lgt_valid_compiler_options([]). +'$lgt_valid_compiler_options'([]). -lgt_valid_compiler_options([Option| Options]) :- +'$lgt_valid_compiler_options'([Option| Options]) :- nonvar(Option), - lgt_valid_compiler_option(Option), - lgt_valid_compiler_options(Options). + '$lgt_valid_compiler_option'(Option), + '$lgt_valid_compiler_options'(Options). -% lgt_valid_compiler_option(@nonvar) +% '$lgt_valid_compiler_option'(@nonvar) -lgt_valid_compiler_option(iso_initialization_dir(Option)) :- +'$lgt_valid_compiler_option'(iso_initialization_dir(Option)) :- once((Option == true; Option == false)). -lgt_valid_compiler_option(xml(Option)) :- +'$lgt_valid_compiler_option'(xml(Option)) :- once((Option == on; Option == off)). -lgt_valid_compiler_option(xsl(File)) :- +'$lgt_valid_compiler_option'(xsl(File)) :- atom(File). -lgt_valid_compiler_option(unknown(Option)) :- +'$lgt_valid_compiler_option'(unknown(Option)) :- once((Option == silent; Option == warning)). -lgt_valid_compiler_option(singletons(Option)) :- +'$lgt_valid_compiler_option'(singletons(Option)) :- once((Option == silent; Option == warning)). -lgt_valid_compiler_option(misspelt(Option)) :- +'$lgt_valid_compiler_option'(misspelt(Option)) :- once((Option == silent; Option == warning)). -lgt_valid_compiler_option(lgtredef(Option)) :- +'$lgt_valid_compiler_option'(lgtredef(Option)) :- once((Option == silent; Option == warning)). -lgt_valid_compiler_option(plredef(Option)) :- +'$lgt_valid_compiler_option'(plredef(Option)) :- once((Option == silent; Option == warning)). -lgt_valid_compiler_option(portability(Option)) :- +'$lgt_valid_compiler_option'(portability(Option)) :- once((Option == silent; Option == warning)). -lgt_valid_compiler_option(report(Option)) :- +'$lgt_valid_compiler_option'(report(Option)) :- once((Option == on; Option == off)). -lgt_valid_compiler_option(smart_compilation(Option)) :- +'$lgt_valid_compiler_option'(smart_compilation(Option)) :- once((Option == on; Option == off)). +'$lgt_valid_compiler_option'(named_anonymous_vars(Option)) :- + once((Option == on; Option == off)). + +'$lgt_valid_compiler_option'(code_prefix(Prefix)) :- + atom(Prefix). -% lgt_valid_flag(@nonvar) + +% '$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(smart_compilation). -lgt_valid_flag(startup_message). -lgt_valid_flag(version). +'$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'(smart_compilation). +'$lgt_valid_flag'(startup_message). +'$lgt_valid_flag'(version). +'$lgt_valid_flag'(named_anonymous_vars). +'$lgt_valid_flag'(code_prefix). -% lgt_valid_flag(@term, @term) +% '$lgt_valid_flag'(@term, @term) % % true if the argument is a valid Logtalk flag-value pair -lgt_valid_flag(Flag, Value) :- +'$lgt_valid_flag'(Flag, Value) :- atom(Flag), Option =.. [Flag, Value], - lgt_valid_compiler_option(Option). + '$lgt_valid_compiler_option'(Option). -% lgt_read_only_flag(@nonvar) +% '$lgt_read_only_flag'(@nonvar) % % true if the argument is a read only Logtalk flag -lgt_read_only_flag(startup_message). -lgt_read_only_flag(version). +'$lgt_read_only_flag'(startup_message). +'$lgt_read_only_flag'(version). % Logtalk built-in predicates % -% lgt_lgt_built_in(?callable) +% '$lgt_lgt_built_in'(?callable) -lgt_lgt_built_in(::(_, _)). +'$lgt_lgt_built_in'(::(_, _)). -lgt_lgt_built_in(forall(_, _)). -lgt_lgt_built_in(retractall(_)). +'$lgt_lgt_built_in'(forall(_, _)). +'$lgt_lgt_built_in'(retractall(_)). -lgt_lgt_built_in(logtalk_compile(_)). -lgt_lgt_built_in(logtalk_compile(_, _)). -lgt_lgt_built_in(logtalk_load(_)). -lgt_lgt_built_in(logtalk_load(_, _)). +'$lgt_lgt_built_in'(logtalk_compile(_)). +'$lgt_lgt_built_in'(logtalk_compile(_, _)). +'$lgt_lgt_built_in'(logtalk_load(_)). +'$lgt_lgt_built_in'(logtalk_load(_, _)). -lgt_lgt_built_in(logtalk_version(_, _, _)). +'$lgt_lgt_built_in'(logtalk_version(_, _, _)). -lgt_lgt_built_in(protocol_property(_, _)). -lgt_lgt_built_in(category_property(_, _)). -lgt_lgt_built_in(object_property(_, _)). +'$lgt_lgt_built_in'(protocol_property(_, _)). +'$lgt_lgt_built_in'(category_property(_, _)). +'$lgt_lgt_built_in'(object_property(_, _)). -lgt_lgt_built_in(current_protocol(_)). -lgt_lgt_built_in(current_category(_)). -lgt_lgt_built_in(current_object(_)). +'$lgt_lgt_built_in'(current_protocol(_)). +'$lgt_lgt_built_in'(current_category(_)). +'$lgt_lgt_built_in'(current_object(_)). -lgt_lgt_built_in(create_object(_, _, _, _)). -lgt_lgt_built_in(create_category(_, _, _, _)). -lgt_lgt_built_in(create_protocol(_, _, _)). +'$lgt_lgt_built_in'(create_object(_, _, _, _)). +'$lgt_lgt_built_in'(create_category(_, _, _, _)). +'$lgt_lgt_built_in'(create_protocol(_, _, _)). -lgt_lgt_built_in(abolish_object(_)). -lgt_lgt_built_in(abolish_category(_)). -lgt_lgt_built_in(abolish_protocol(_)). +'$lgt_lgt_built_in'(abolish_object(_)). +'$lgt_lgt_built_in'(abolish_category(_)). +'$lgt_lgt_built_in'(abolish_protocol(_)). -lgt_lgt_built_in(implements_protocol(_, _)). -lgt_lgt_built_in(implements_protocol(_, _, _)). -lgt_lgt_built_in(imports_category(_, _)). -lgt_lgt_built_in(imports_category(_, _, _)). -lgt_lgt_built_in(instantiates_class(_, _)). -lgt_lgt_built_in(instantiates_class(_, _, _)). -lgt_lgt_built_in(specializes_class(_, _)). -lgt_lgt_built_in(specializes_class(_, _, _)). -lgt_lgt_built_in(extends_protocol(_, _)). -lgt_lgt_built_in(extends_protocol(_, _, _)). -lgt_lgt_built_in(extends_object(_, _)). -lgt_lgt_built_in(extends_object(_, _, _)). +'$lgt_lgt_built_in'(implements_protocol(_, _)). +'$lgt_lgt_built_in'(implements_protocol(_, _, _)). +'$lgt_lgt_built_in'(imports_category(_, _)). +'$lgt_lgt_built_in'(imports_category(_, _, _)). +'$lgt_lgt_built_in'(instantiates_class(_, _)). +'$lgt_lgt_built_in'(instantiates_class(_, _, _)). +'$lgt_lgt_built_in'(specializes_class(_, _)). +'$lgt_lgt_built_in'(specializes_class(_, _, _)). +'$lgt_lgt_built_in'(extends_protocol(_, _)). +'$lgt_lgt_built_in'(extends_protocol(_, _, _)). +'$lgt_lgt_built_in'(extends_object(_, _)). +'$lgt_lgt_built_in'(extends_object(_, _, _)). -lgt_lgt_built_in(abolish_events(_, _, _, _, _)). -lgt_lgt_built_in(define_events(_, _, _, _, _)). -lgt_lgt_built_in(current_event(_, _, _, _, _)). +'$lgt_lgt_built_in'(abolish_events(_, _, _, _, _)). +'$lgt_lgt_built_in'(define_events(_, _, _, _, _)). +'$lgt_lgt_built_in'(current_event(_, _, _, _, _)). -lgt_lgt_built_in(current_logtalk_flag(_, _)). -lgt_lgt_built_in(set_logtalk_flag(_, _)). +'$lgt_lgt_built_in'(current_logtalk_flag(_, _)). +'$lgt_lgt_built_in'(set_logtalk_flag(_, _)). @@ -5356,122 +5395,122 @@ lgt_lgt_built_in(set_logtalk_flag(_, _)). -% lgt_write_xml_file(+stream) +% '$lgt_write_xml_file'(+stream) % % writes a XML file containing the documentation of a compiled entity -lgt_write_xml_file(Stream) :- - lgt_write_xml_header(Stream), - lgt_write_xml_entity(Stream), - lgt_write_xml_relations(Stream), - lgt_write_xml_predicates(Stream), - lgt_write_xml_footer(Stream). +'$lgt_write_xml_file'(Stream) :- + '$lgt_write_xml_header'(Stream), + '$lgt_write_xml_entity'(Stream), + '$lgt_write_xml_relations'(Stream), + '$lgt_write_xml_predicates'(Stream), + '$lgt_write_xml_footer'(Stream). -lgt_write_xml_header(Stream) :- - lgt_write_xml_open_tag(Stream, '?xml version="1.0"?', []), +'$lgt_write_xml_header'(Stream) :- + '$lgt_write_xml_open_tag'(Stream, '?xml version="1.0"?', []), write(Stream, ''), nl(Stream), - lgt_compiler_option(xsl, XSL), + '$lgt_compiler_option'(xsl, XSL), write(Stream, ''), nl(Stream), - lgt_write_xml_open_tag(Stream, logtalk, []). + '$lgt_write_xml_open_tag'(Stream, logtalk, []). -lgt_write_xml_footer(Stream) :- - lgt_write_xml_close_tag(Stream, logtalk). +'$lgt_write_xml_footer'(Stream) :- + '$lgt_write_xml_close_tag'(Stream, logtalk). -lgt_write_xml_entity(Stream) :- - lgt_entity_(Type, Entity, _, _), - (lgt_entity_comp_mode_((dynamic)) -> Compilation = (dynamic); Compilation = static), - lgt_write_xml_open_tag(Stream, entity, []), - lgt_entity_to_xml_name(Entity, Name), - lgt_write_xml_cdata_element(Stream, name, [], Name), - lgt_write_xml_element(Stream, (type), [], Type), - lgt_write_xml_element(Stream, compilation, [], Compilation), - (lgt_info_(List) -> - (lgt_member(comment is Comment, List) -> - lgt_write_xml_cdata_element(Stream, comment, [], Comment) +'$lgt_write_xml_entity'(Stream) :- + '$lgt_entity_'(Type, Entity, _, _), + ('$lgt_entity_comp_mode_'((dynamic)) -> Compilation = (dynamic); Compilation = static), + '$lgt_write_xml_open_tag'(Stream, entity, []), + '$lgt_entity_to_xml_name'(Entity, Name), + '$lgt_write_xml_cdata_element'(Stream, name, [], Name), + '$lgt_write_xml_element'(Stream, (type), [], Type), + '$lgt_write_xml_element'(Stream, compilation, [], Compilation), + ('$lgt_info_'(List) -> + ('$lgt_member'(comment is Comment, List) -> + '$lgt_write_xml_cdata_element'(Stream, comment, [], Comment) ; true), - (lgt_member(authors is Authors, List) -> - lgt_write_xml_cdata_element(Stream, authors, [], Authors) + ('$lgt_member'(authors is Authors, List) -> + '$lgt_write_xml_cdata_element'(Stream, authors, [], Authors) ; true), - (lgt_member(version is Version, List) -> - lgt_write_xml_element(Stream, version, [], Version) + ('$lgt_member'(version is Version, List) -> + '$lgt_write_xml_element'(Stream, version, [], Version) ; true), - (lgt_member(date is Date, List) -> - lgt_write_xml_element(Stream, date, [], Date) + ('$lgt_member'(date is Date, List) -> + '$lgt_write_xml_element'(Stream, date, [], Date) ; true), forall( - (lgt_member(Key is Value, List), - \+ lgt_member(Key, [comment, authors, version, date, parnames])), - (lgt_write_xml_open_tag(Stream, info, []), - lgt_write_xml_element(Stream, key, [], Key), - lgt_write_xml_cdata_element(Stream, value, [], Value), - lgt_write_xml_close_tag(Stream, info))) + ('$lgt_member'(Key is Value, List), + \+ '$lgt_member'(Key, [comment, authors, version, date, parnames])), + ('$lgt_write_xml_open_tag'(Stream, info, []), + '$lgt_write_xml_element'(Stream, key, [], Key), + '$lgt_write_xml_cdata_element'(Stream, value, [], Value), + '$lgt_write_xml_close_tag'(Stream, info))) ; true), - lgt_write_xml_close_tag(Stream, entity). + '$lgt_write_xml_close_tag'(Stream, entity). -% lgt_entity_to_xml_name(+entity, -nonvar) +% '$lgt_entity_to_xml_name'(+entity, -nonvar) % % instantiates the parameters in a parametric object to % user defined names or to the atom '_' -lgt_entity_to_xml_name(Entity, Name) :- - lgt_info_(List), - lgt_member(parnames is Names, List), +'$lgt_entity_to_xml_name'(Entity, Name) :- + '$lgt_info_'(List), + '$lgt_member'(parnames is Names, List), !, Entity =.. [Functor| Names], Name =.. [Functor| Names]. -lgt_entity_to_xml_name(Entity, Name) :- +'$lgt_entity_to_xml_name'(Entity, Name) :- Entity =.. [Functor| Args], - lgt_vars_to_underscore(Args, Names), + '$lgt_vars_to_underscore'(Args, Names), Name =.. [Functor| Names]. -% lgt_relation_to_xml_name(+entity, +entity, -atom) +% '$lgt_relation_to_xml_name'(+entity, +entity, -atom) % % instantiates the parameters in a related entity taking % in account the parameter sharing with the original entity -lgt_relation_to_xml_name(Entity, Relation, Name) :- - lgt_entity_to_xml_name(Entity, _), +'$lgt_relation_to_xml_name'(Entity, Relation, Name) :- + '$lgt_entity_to_xml_name'(Entity, _), Relation =.. [Functor| Args], - lgt_vars_to_underscore(Args, Names), + '$lgt_vars_to_underscore'(Args, Names), Name =.. [Functor| Names]. -% lgt_vars_to_underscore(+list, -list) +% '$lgt_vars_to_underscore'(+list, -list) % % instantiates the variables in the input list to the atom '_' -lgt_vars_to_underscore([], []). +'$lgt_vars_to_underscore'([], []). -lgt_vars_to_underscore([Arg| Args], [Name| Names]) :- +'$lgt_vars_to_underscore'([Arg| Args], [Name| Names]) :- (var(Arg) -> Name = '_'; Name = Arg), - lgt_vars_to_underscore(Args, Names). + '$lgt_vars_to_underscore'(Args, Names). -% lgt_relation_to_xml_filename(+entity, -atom) +% '$lgt_relation_to_xml_filename'(+entity, -atom) % % needed to build filenames in links to parametric objects -lgt_relation_to_xml_filename(Relation, File) :- +'$lgt_relation_to_xml_filename'(Relation, File) :- atom(Relation) -> File = Relation ; @@ -5482,202 +5521,202 @@ lgt_relation_to_xml_filename(Relation, File) :- -% lgt_write_xml_predicates(+stream) +% '$lgt_write_xml_predicates'(+stream) % % writes the predicate documentation -lgt_write_xml_predicates(Stream) :- - lgt_write_xml_open_tag(Stream, predicates, []), - lgt_write_xml_public_predicates(Stream), - lgt_write_xml_protected_predicates(Stream), - lgt_write_xml_private_predicates(Stream), - lgt_write_xml_close_tag(Stream, predicates). +'$lgt_write_xml_predicates'(Stream) :- + '$lgt_write_xml_open_tag'(Stream, predicates, []), + '$lgt_write_xml_public_predicates'(Stream), + '$lgt_write_xml_protected_predicates'(Stream), + '$lgt_write_xml_private_predicates'(Stream), + '$lgt_write_xml_close_tag'(Stream, predicates). -% lgt_write_xml_public_predicates(+stream) +% '$lgt_write_xml_public_predicates'(+stream) % % writes the documentation of public predicates -lgt_write_xml_public_predicates(Stream) :- - lgt_write_xml_open_tag(Stream, (public), []), - lgt_public_(Functor/Arity), - lgt_write_xml_predicate(Stream, Functor/Arity, (public)), +'$lgt_write_xml_public_predicates'(Stream) :- + '$lgt_write_xml_open_tag'(Stream, (public), []), + '$lgt_public_'(Functor/Arity), + '$lgt_write_xml_predicate'(Stream, Functor/Arity, (public)), fail. -lgt_write_xml_public_predicates(Stream) :- - lgt_write_xml_close_tag(Stream, (public)). +'$lgt_write_xml_public_predicates'(Stream) :- + '$lgt_write_xml_close_tag'(Stream, (public)). -% lgt_write_xml_protected_predicates(+stream) +% '$lgt_write_xml_protected_predicates'(+stream) % % writes the documentation protected predicates -lgt_write_xml_protected_predicates(Stream) :- - lgt_write_xml_open_tag(Stream, protected, []), - lgt_protected_(Functor/Arity), - lgt_write_xml_predicate(Stream, Functor/Arity, protected), +'$lgt_write_xml_protected_predicates'(Stream) :- + '$lgt_write_xml_open_tag'(Stream, protected, []), + '$lgt_protected_'(Functor/Arity), + '$lgt_write_xml_predicate'(Stream, Functor/Arity, protected), fail. -lgt_write_xml_protected_predicates(Stream) :- - lgt_write_xml_close_tag(Stream, protected). +'$lgt_write_xml_protected_predicates'(Stream) :- + '$lgt_write_xml_close_tag'(Stream, protected). -% lgt_write_xml_private_predicates(+stream) +% '$lgt_write_xml_private_predicates'(+stream) % % writes the documentation of private predicates -lgt_write_xml_private_predicates(Stream) :- - lgt_write_xml_open_tag(Stream, private, []), - lgt_private_(Functor/Arity), - lgt_write_xml_predicate(Stream, Functor/Arity, private), +'$lgt_write_xml_private_predicates'(Stream) :- + '$lgt_write_xml_open_tag'(Stream, private, []), + '$lgt_private_'(Functor/Arity), + '$lgt_write_xml_predicate'(Stream, Functor/Arity, private), fail. -lgt_write_xml_private_predicates(Stream) :- - lgt_write_xml_close_tag(Stream, private). +'$lgt_write_xml_private_predicates'(Stream) :- + '$lgt_write_xml_close_tag'(Stream, private). -% lgt_write_xml_predicate(+stream, +atom/+integer, +term) +% '$lgt_write_xml_predicate'(+stream, +atom/+integer, +term) % % writes the documentation of a predicate -lgt_write_xml_predicate(Stream, Functor/Arity, Scope) :- - ((lgt_entity_comp_mode_((dynamic)); lgt_dynamic_(Functor/Arity)) -> +'$lgt_write_xml_predicate'(Stream, Functor/Arity, Scope) :- + (('$lgt_entity_comp_mode_'((dynamic)); '$lgt_dynamic_'(Functor/Arity)) -> Compilation = (dynamic) ; Compilation = static), - lgt_write_xml_open_tag(Stream, predicate, []), - lgt_write_xml_cdata_element(Stream, name, [], Functor/Arity), - lgt_write_xml_element(Stream, scope, [], Scope), - lgt_write_xml_element(Stream, compilation, [], Compilation), + '$lgt_write_xml_open_tag'(Stream, predicate, []), + '$lgt_write_xml_cdata_element'(Stream, name, [], Functor/Arity), + '$lgt_write_xml_element'(Stream, scope, [], Scope), + '$lgt_write_xml_element'(Stream, compilation, [], Compilation), functor(Meta, Functor, Arity), - (lgt_metapredicate_(Meta) -> - lgt_write_xml_cdata_element(Stream, meta, [], Meta) + ('$lgt_metapredicate_'(Meta) -> + '$lgt_write_xml_cdata_element'(Stream, meta, [], Meta) ; true), functor(Template, Functor, Arity), forall( - lgt_mode_(Template, Solutions), - (lgt_write_xml_open_tag(Stream, (mode), []), - lgt_write_xml_cdata_element(Stream, template, [], Template), - lgt_write_xml_element(Stream, solutions, [], Solutions), - lgt_write_xml_close_tag(Stream, (mode)))), - ((lgt_info_(Functor/Arity, List), lgt_member(comment is Comment, List)) -> - lgt_write_xml_cdata_element(Stream, comment, [], Comment) + '$lgt_mode_'(Template, Solutions), + ('$lgt_write_xml_open_tag'(Stream, (mode), []), + '$lgt_write_xml_cdata_element'(Stream, template, [], Template), + '$lgt_write_xml_element'(Stream, solutions, [], Solutions), + '$lgt_write_xml_close_tag'(Stream, (mode)))), + (('$lgt_info_'(Functor/Arity, List), '$lgt_member'(comment is Comment, List)) -> + '$lgt_write_xml_cdata_element'(Stream, comment, [], Comment) ; true), - ((lgt_info_(Functor/Arity, List), lgt_member(argnames is Names, List)) -> + (('$lgt_info_'(Functor/Arity, List), '$lgt_member'(argnames is Names, List)) -> Template =.. [Functor| Names], - lgt_write_xml_cdata_element(Stream, template, [], Template) + '$lgt_write_xml_cdata_element'(Stream, template, [], Template) ; true), forall( - (lgt_info_(Functor/Arity, List), - lgt_member(Key is Value, List), - \+ lgt_member(Key, [comment, argnames])), - (lgt_write_xml_open_tag(Stream, info, []), - lgt_write_xml_element(Stream, key, [], Key), - lgt_write_xml_cdata_element(Stream, value, [], Value), - lgt_write_xml_close_tag(Stream, info))), - lgt_write_xml_close_tag(Stream, predicate). + ('$lgt_info_'(Functor/Arity, List), + '$lgt_member'(Key is Value, List), + \+ '$lgt_member'(Key, [comment, argnames])), + ('$lgt_write_xml_open_tag'(Stream, info, []), + '$lgt_write_xml_element'(Stream, key, [], Key), + '$lgt_write_xml_cdata_element'(Stream, value, [], Value), + '$lgt_write_xml_close_tag'(Stream, info))), + '$lgt_write_xml_close_tag'(Stream, predicate). -lgt_write_xml_relations(Stream) :- - lgt_write_xml_open_tag(Stream, relations, []), +'$lgt_write_xml_relations'(Stream) :- + '$lgt_write_xml_open_tag'(Stream, relations, []), fail. -lgt_write_xml_relations(Stream) :- - lgt_rclause_(lgt_implements_protocol_(Entity, Ptc, Scope)), - lgt_write_xml_relation(Stream, Entity, Ptc, implements, Scope), +'$lgt_write_xml_relations'(Stream) :- + '$lgt_rclause_'('$lgt_implements_protocol_'(Entity, Ptc, Scope)), + '$lgt_write_xml_relation'(Stream, Entity, Ptc, implements, Scope), fail. -lgt_write_xml_relations(Stream) :- - lgt_rclause_(lgt_imports_category_(Entity, Ctg, Scope)), - lgt_write_xml_relation(Stream, Entity, Ctg, imports, Scope), +'$lgt_write_xml_relations'(Stream) :- + '$lgt_rclause_'('$lgt_imports_category_'(Entity, Ctg, Scope)), + '$lgt_write_xml_relation'(Stream, Entity, Ctg, imports, Scope), fail. -lgt_write_xml_relations(Stream) :- - lgt_rclause_(lgt_extends_object_(Entity, Parent, Scope)), - lgt_write_xml_relation(Stream, Entity, Parent, extends, Scope), +'$lgt_write_xml_relations'(Stream) :- + '$lgt_rclause_'('$lgt_extends_object_'(Entity, Parent, Scope)), + '$lgt_write_xml_relation'(Stream, Entity, Parent, extends, Scope), fail. -lgt_write_xml_relations(Stream) :- - lgt_rclause_(lgt_instantiates_class_(Entity, Class, Scope)), - lgt_write_xml_relation(Stream, Entity, Class, instantiates, Scope), +'$lgt_write_xml_relations'(Stream) :- + '$lgt_rclause_'('$lgt_instantiates_class_'(Entity, Class, Scope)), + '$lgt_write_xml_relation'(Stream, Entity, Class, instantiates, Scope), fail. -lgt_write_xml_relations(Stream) :- - lgt_rclause_(lgt_specializes_class_(Entity, Superclass, Scope)), - lgt_write_xml_relation(Stream, Entity, Superclass, specializes, Scope), +'$lgt_write_xml_relations'(Stream) :- + '$lgt_rclause_'('$lgt_specializes_class_'(Entity, Superclass, Scope)), + '$lgt_write_xml_relation'(Stream, Entity, Superclass, specializes, Scope), fail. -lgt_write_xml_relations(Stream) :- - lgt_rclause_(lgt_extends_protocol_(Entity, Ptc, Scope)), - lgt_write_xml_relation(Stream, Entity, Ptc, extends, Scope), +'$lgt_write_xml_relations'(Stream) :- + '$lgt_rclause_'('$lgt_extends_protocol_'(Entity, Ptc, Scope)), + '$lgt_write_xml_relation'(Stream, Entity, Ptc, extends, Scope), fail. -lgt_write_xml_relations(Stream) :- - lgt_entity_(_, Entity, _, _), - lgt_uses_(Obj), - lgt_write_xml_relation(Stream, Entity, Obj, uses), +'$lgt_write_xml_relations'(Stream) :- + '$lgt_entity_'(_, Entity, _, _), + '$lgt_uses_'(Obj), + '$lgt_write_xml_relation'(Stream, Entity, Obj, uses), fail. -lgt_write_xml_relations(Stream) :- - lgt_entity_(_, Entity, _, _), - lgt_calls_(Ptc), - lgt_write_xml_relation(Stream, Entity, Ptc, calls), +'$lgt_write_xml_relations'(Stream) :- + '$lgt_entity_'(_, Entity, _, _), + '$lgt_calls_'(Ptc), + '$lgt_write_xml_relation'(Stream, Entity, Ptc, calls), fail. -lgt_write_xml_relations(Stream) :- - lgt_write_xml_close_tag(Stream, relations). +'$lgt_write_xml_relations'(Stream) :- + '$lgt_write_xml_close_tag'(Stream, relations). -lgt_write_xml_relation(Stream, Entity, Relation, Tag, Scope) :- - lgt_relation_to_xml_name(Entity, Relation, Name), - lgt_relation_to_xml_filename(Relation, File), - lgt_write_xml_open_tag(Stream, Tag, []), - lgt_write_xml_cdata_element(Stream, name, [], Name), - lgt_write_xml_element(Stream, scope, [], Scope), - lgt_write_xml_cdata_element(Stream, file, [], File), - lgt_write_xml_close_tag(Stream, Tag). +'$lgt_write_xml_relation'(Stream, Entity, Relation, Tag, Scope) :- + '$lgt_relation_to_xml_name'(Entity, Relation, Name), + '$lgt_relation_to_xml_filename'(Relation, File), + '$lgt_write_xml_open_tag'(Stream, Tag, []), + '$lgt_write_xml_cdata_element'(Stream, name, [], Name), + '$lgt_write_xml_element'(Stream, scope, [], Scope), + '$lgt_write_xml_cdata_element'(Stream, file, [], File), + '$lgt_write_xml_close_tag'(Stream, Tag). -lgt_write_xml_relation(Stream, Entity, Relation, Tag) :- - lgt_relation_to_xml_name(Entity, Relation, Name), - lgt_relation_to_xml_filename(Relation, File), - lgt_write_xml_open_tag(Stream, Tag, []), - lgt_write_xml_cdata_element(Stream, name, [], Name), - lgt_write_xml_cdata_element(Stream, file, [], File), - lgt_write_xml_close_tag(Stream, Tag). +'$lgt_write_xml_relation'(Stream, Entity, Relation, Tag) :- + '$lgt_relation_to_xml_name'(Entity, Relation, Name), + '$lgt_relation_to_xml_filename'(Relation, File), + '$lgt_write_xml_open_tag'(Stream, Tag, []), + '$lgt_write_xml_cdata_element'(Stream, name, [], Name), + '$lgt_write_xml_cdata_element'(Stream, file, [], File), + '$lgt_write_xml_close_tag'(Stream, Tag). -% lgt_write_xml_open_tag(@stream, @atom, @list) +% '$lgt_write_xml_open_tag'(@stream, @atom, @list) % % writes -lgt_write_xml_open_tag(Stream, Tag, Atts) :- +'$lgt_write_xml_open_tag'(Stream, Tag, Atts) :- write(Stream, '<'), write(Stream, Tag), - lgt_write_xml_tag_attributes(Stream, Atts), + '$lgt_write_xml_tag_attributes'(Stream, Atts), write(Stream, '>'), nl(Stream). -% lgt_write_xml_element(@stream, @atom, @list, @term) +% '$lgt_write_xml_element'(@stream, @atom, @list, @term) % % writes Text -lgt_write_xml_element(Stream, Tag, Atts, Text) :- +'$lgt_write_xml_element'(Stream, Tag, Atts, Text) :- write(Stream, '<'), write(Stream, Tag), - lgt_write_xml_tag_attributes(Stream, Atts), + '$lgt_write_xml_tag_attributes'(Stream, Atts), write(Stream, '>'), write(Stream, Text), write(Stream, ' -lgt_write_xml_cdata_element(Stream, Tag, Atts, Text) :- +'$lgt_write_xml_cdata_element'(Stream, Tag, Atts, Text) :- write(Stream, '<'), write(Stream, Tag), - lgt_write_xml_tag_attributes(Stream, Atts), + '$lgt_write_xml_tag_attributes'(Stream, Atts), write(Stream, '> -lgt_write_xml_close_tag(Stream, Tag) :- +'$lgt_write_xml_close_tag'(Stream, Tag) :- write(Stream, ''), @@ -5738,134 +5777,134 @@ lgt_write_xml_close_tag(Stream, Tag) :- %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -lgt_iso_def_pred(true). -lgt_iso_def_pred(fail). -lgt_iso_def_pred(call(_)). -lgt_iso_def_pred(!). -lgt_iso_def_pred((_; _)). -lgt_iso_def_pred((_, _)). -lgt_iso_def_pred((_ -> _)). -lgt_iso_def_pred((_ -> _; _)). -lgt_iso_def_pred(catch(_, _, _)). -lgt_iso_def_pred(throw(_)). +'$lgt_iso_def_pred'(true). +'$lgt_iso_def_pred'(fail). +'$lgt_iso_def_pred'(call(_)). +'$lgt_iso_def_pred'(!). +'$lgt_iso_def_pred'((_; _)). +'$lgt_iso_def_pred'((_, _)). +'$lgt_iso_def_pred'((_ -> _)). +'$lgt_iso_def_pred'((_ -> _; _)). +'$lgt_iso_def_pred'(catch(_, _, _)). +'$lgt_iso_def_pred'(throw(_)). -lgt_iso_def_pred((_ = _)). -lgt_iso_def_pred((_ \= _)). -lgt_iso_def_pred(unify_with_occurs_check(_, _)). +'$lgt_iso_def_pred'((_ = _)). +'$lgt_iso_def_pred'((_ \= _)). +'$lgt_iso_def_pred'(unify_with_occurs_check(_, _)). -lgt_iso_def_pred(var(_)). -lgt_iso_def_pred(nonvar(_)). -lgt_iso_def_pred(atom(_)). -lgt_iso_def_pred(atomic(_)). -lgt_iso_def_pred(number(_)). -lgt_iso_def_pred(integer(_)). -lgt_iso_def_pred(float(_)). -lgt_iso_def_pred(compound(_)). +'$lgt_iso_def_pred'(var(_)). +'$lgt_iso_def_pred'(nonvar(_)). +'$lgt_iso_def_pred'(atom(_)). +'$lgt_iso_def_pred'(atomic(_)). +'$lgt_iso_def_pred'(number(_)). +'$lgt_iso_def_pred'(integer(_)). +'$lgt_iso_def_pred'(float(_)). +'$lgt_iso_def_pred'(compound(_)). -lgt_iso_def_pred((_ @=< _)). -lgt_iso_def_pred((_ @< _)). -lgt_iso_def_pred((_ @>= _)). -lgt_iso_def_pred((_ @> _)). -lgt_iso_def_pred((_ == _)). -lgt_iso_def_pred((_ \== _)). +'$lgt_iso_def_pred'((_ @=< _)). +'$lgt_iso_def_pred'((_ @< _)). +'$lgt_iso_def_pred'((_ @>= _)). +'$lgt_iso_def_pred'((_ @> _)). +'$lgt_iso_def_pred'((_ == _)). +'$lgt_iso_def_pred'((_ \== _)). -lgt_iso_def_pred(functor(_, _, _)). -lgt_iso_def_pred(arg(_, _, _)). -lgt_iso_def_pred(_ =.. _). -lgt_iso_def_pred(copy_term(_, _)). +'$lgt_iso_def_pred'(functor(_, _, _)). +'$lgt_iso_def_pred'(arg(_, _, _)). +'$lgt_iso_def_pred'(_ =.. _). +'$lgt_iso_def_pred'(copy_term(_, _)). -lgt_iso_def_pred(_ is _). +'$lgt_iso_def_pred'(_ is _). -lgt_iso_def_pred((_ =< _)). -lgt_iso_def_pred((_ < _)). -lgt_iso_def_pred((_ >= _)). -lgt_iso_def_pred((_ > _)). -lgt_iso_def_pred((_ =:= _)). -lgt_iso_def_pred((_ =\= _)). +'$lgt_iso_def_pred'((_ =< _)). +'$lgt_iso_def_pred'((_ < _)). +'$lgt_iso_def_pred'((_ >= _)). +'$lgt_iso_def_pred'((_ > _)). +'$lgt_iso_def_pred'((_ =:= _)). +'$lgt_iso_def_pred'((_ =\= _)). -lgt_iso_def_pred(clause(_, _)). -lgt_iso_def_pred(current_predicate(_)). +'$lgt_iso_def_pred'(clause(_, _)). +'$lgt_iso_def_pred'(current_predicate(_)). -lgt_iso_def_pred(asserta(_)). -lgt_iso_def_pred(assertz(_)). -lgt_iso_def_pred(retract(_)). -lgt_iso_def_pred(abolish(_)). +'$lgt_iso_def_pred'(asserta(_)). +'$lgt_iso_def_pred'(assertz(_)). +'$lgt_iso_def_pred'(retract(_)). +'$lgt_iso_def_pred'(abolish(_)). -lgt_iso_def_pred(findall(_, _, _)). -lgt_iso_def_pred(bagof(_, _, _)). -lgt_iso_def_pred(setof(_, _, _)). +'$lgt_iso_def_pred'(findall(_, _, _)). +'$lgt_iso_def_pred'(bagof(_, _, _)). +'$lgt_iso_def_pred'(setof(_, _, _)). -lgt_iso_def_pred(current_input(_)). -lgt_iso_def_pred(current_output(_)). -lgt_iso_def_pred(set_input(_)). -lgt_iso_def_pred(set_output(_)). -lgt_iso_def_pred(open(_, _, _, _)). -lgt_iso_def_pred(open(_, _, _)). -lgt_iso_def_pred(close(_, _)). -lgt_iso_def_pred(close(_)). -lgt_iso_def_pred(flush_output(_)). -lgt_iso_def_pred(flush_output). -lgt_iso_def_pred(stream_property(_, _)). -lgt_iso_def_pred(at_end_of_stream). -lgt_iso_def_pred(at_end_of_stream(_)). -lgt_iso_def_pred(set_stream_position(_, _)). +'$lgt_iso_def_pred'(current_input(_)). +'$lgt_iso_def_pred'(current_output(_)). +'$lgt_iso_def_pred'(set_input(_)). +'$lgt_iso_def_pred'(set_output(_)). +'$lgt_iso_def_pred'(open(_, _, _, _)). +'$lgt_iso_def_pred'(open(_, _, _)). +'$lgt_iso_def_pred'(close(_, _)). +'$lgt_iso_def_pred'(close(_)). +'$lgt_iso_def_pred'(flush_output(_)). +'$lgt_iso_def_pred'(flush_output). +'$lgt_iso_def_pred'(stream_property(_, _)). +'$lgt_iso_def_pred'(at_end_of_stream). +'$lgt_iso_def_pred'(at_end_of_stream(_)). +'$lgt_iso_def_pred'(set_stream_position(_, _)). -lgt_iso_def_pred(get_char(_, _)). -lgt_iso_def_pred(get_char(_)). -lgt_iso_def_pred(get_code(_, _)). -lgt_iso_def_pred(get_code(_)). -lgt_iso_def_pred(peek_char(_, _)). -lgt_iso_def_pred(peek_char(_)). -lgt_iso_def_pred(peek_code(_, _)). -lgt_iso_def_pred(peek_code(_)). -lgt_iso_def_pred(put_char(_, _)). -lgt_iso_def_pred(put_char(_)). -lgt_iso_def_pred(put_code(_, _)). -lgt_iso_def_pred(put_code(_)). -lgt_iso_def_pred(nl). -lgt_iso_def_pred(nl(_)). +'$lgt_iso_def_pred'(get_char(_, _)). +'$lgt_iso_def_pred'(get_char(_)). +'$lgt_iso_def_pred'(get_code(_, _)). +'$lgt_iso_def_pred'(get_code(_)). +'$lgt_iso_def_pred'(peek_char(_, _)). +'$lgt_iso_def_pred'(peek_char(_)). +'$lgt_iso_def_pred'(peek_code(_, _)). +'$lgt_iso_def_pred'(peek_code(_)). +'$lgt_iso_def_pred'(put_char(_, _)). +'$lgt_iso_def_pred'(put_char(_)). +'$lgt_iso_def_pred'(put_code(_, _)). +'$lgt_iso_def_pred'(put_code(_)). +'$lgt_iso_def_pred'(nl). +'$lgt_iso_def_pred'(nl(_)). -lgt_iso_def_pred(get_byte(_, _)). -lgt_iso_def_pred(get_byte(_)). -lgt_iso_def_pred(peek_byte(_, _)). -lgt_iso_def_pred(peek_byte(_)). -lgt_iso_def_pred(put_byte(_, _)). -lgt_iso_def_pred(put_byte(_)). +'$lgt_iso_def_pred'(get_byte(_, _)). +'$lgt_iso_def_pred'(get_byte(_)). +'$lgt_iso_def_pred'(peek_byte(_, _)). +'$lgt_iso_def_pred'(peek_byte(_)). +'$lgt_iso_def_pred'(put_byte(_, _)). +'$lgt_iso_def_pred'(put_byte(_)). -lgt_iso_def_pred(read_term(_, _, _)). -lgt_iso_def_pred(read_term(_, _)). -lgt_iso_def_pred(read(_)). -lgt_iso_def_pred(read(_, _)). -lgt_iso_def_pred(write_term(_, _, _)). -lgt_iso_def_pred(write_term(_, _)). -lgt_iso_def_pred(write(_)). -lgt_iso_def_pred(write(_, _)). -lgt_iso_def_pred(writeq(_)). -lgt_iso_def_pred(writeq(_, _)). -lgt_iso_def_pred(write_canonical(_)). -lgt_iso_def_pred(write_canonical(_, _)). -lgt_iso_def_pred(op(_, _, _)). -lgt_iso_def_pred(current_op(_, _, _)). -lgt_iso_def_pred(char_conversion(_, _)). -lgt_iso_def_pred(current_char_conversion(_, _)). +'$lgt_iso_def_pred'(read_term(_, _, _)). +'$lgt_iso_def_pred'(read_term(_, _)). +'$lgt_iso_def_pred'(read(_)). +'$lgt_iso_def_pred'(read(_, _)). +'$lgt_iso_def_pred'(write_term(_, _, _)). +'$lgt_iso_def_pred'(write_term(_, _)). +'$lgt_iso_def_pred'(write(_)). +'$lgt_iso_def_pred'(write(_, _)). +'$lgt_iso_def_pred'(writeq(_)). +'$lgt_iso_def_pred'(writeq(_, _)). +'$lgt_iso_def_pred'(write_canonical(_)). +'$lgt_iso_def_pred'(write_canonical(_, _)). +'$lgt_iso_def_pred'(op(_, _, _)). +'$lgt_iso_def_pred'(current_op(_, _, _)). +'$lgt_iso_def_pred'(char_conversion(_, _)). +'$lgt_iso_def_pred'(current_char_conversion(_, _)). -lgt_iso_def_pred(\+ _). -lgt_iso_def_pred(once(_)). -lgt_iso_def_pred(repeat). +'$lgt_iso_def_pred'(\+ _). +'$lgt_iso_def_pred'(once(_)). +'$lgt_iso_def_pred'(repeat). -lgt_iso_def_pred(atom_length(_, _)). -lgt_iso_def_pred(atom_concat(_, _, _)). -lgt_iso_def_pred(sub_atom(_, _, _, _, _)). -lgt_iso_def_pred(atom_chars(_, _)). -lgt_iso_def_pred(atom_codes(_, _)). -lgt_iso_def_pred(char_code(_, _)). -lgt_iso_def_pred(number_chars(_, _)). -lgt_iso_def_pred(number_codes(_, _)). +'$lgt_iso_def_pred'(atom_length(_, _)). +'$lgt_iso_def_pred'(atom_concat(_, _, _)). +'$lgt_iso_def_pred'(sub_atom(_, _, _, _, _)). +'$lgt_iso_def_pred'(atom_chars(_, _)). +'$lgt_iso_def_pred'(atom_codes(_, _)). +'$lgt_iso_def_pred'(char_code(_, _)). +'$lgt_iso_def_pred'(number_chars(_, _)). +'$lgt_iso_def_pred'(number_codes(_, _)). -lgt_iso_def_pred(set_prolog_flag(_, _)). -lgt_iso_def_pred(current_prolog_flag(_, _)). -lgt_iso_def_pred(halt). -lgt_iso_def_pred(halt(_)). +'$lgt_iso_def_pred'(set_prolog_flag(_, _)). +'$lgt_iso_def_pred'(current_prolog_flag(_, _)). +'$lgt_iso_def_pred'(halt). +'$lgt_iso_def_pred'(halt(_)). @@ -5876,50 +5915,54 @@ lgt_iso_def_pred(halt(_)). %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -lgt_startup_message :- - lgt_default_flag(startup_message, on) -> - lgt_banner, - lgt_default_flags +'$lgt_startup_message' :- + '$lgt_default_flag'(startup_message, on) -> + '$lgt_banner', + '$lgt_default_flags' ; true. -lgt_banner :- +'$lgt_banner' :- current_logtalk_flag(version, version(Major, Minor, Patch)), nl, write('Logtalk '), write(Major), write('.'), write(Minor), write('.'), write(Patch), nl, write('Copyright (c) 1998-2002 Paulo Moura'), nl, nl. -lgt_default_flags :- +'$lgt_default_flags' :- write('Default compilation flags:'), nl, - lgt_default_flag(iso_initialization_dir, ISO), + '$lgt_default_flag'(iso_initialization_dir, ISO), write(' ISO initialization/1 directive: '), write(ISO), nl, - lgt_default_flag(xml, XML), + '$lgt_default_flag'(xml, XML), write(' XML documenting files: '), write(XML), nl, - lgt_default_flag(xsl, XSL), + '$lgt_default_flag'(xsl, XSL), write(' XSL stylesheet: '), write(XSL), nl, - lgt_default_flag(unknown, Unknown), + '$lgt_default_flag'(unknown, Unknown), write(' Unknown entities: '), write(Unknown), nl, - lgt_default_flag(misspelt, Misspelt), + '$lgt_default_flag'(misspelt, Misspelt), write(' Misspelt predicates: '), write(Misspelt), nl, - lgt_default_flag(singletons, Singletons), + '$lgt_default_flag'(singletons, Singletons), write(' Singletons variables: '), write(Singletons), nl, - lgt_default_flag(lgtredef, Lgtredef), + '$lgt_default_flag'(lgtredef, Lgtredef), write(' Logtalk built-ins redefinition: '), write(Lgtredef), nl, - lgt_default_flag(plredef, Plredef), + '$lgt_default_flag'(plredef, Plredef), write(' Prolog built-ins redefinition: '), write(Plredef), nl, - lgt_default_flag(portability, Portability), + '$lgt_default_flag'(portability, Portability), write(' Non portable calls: '), write(Portability), nl, - lgt_default_flag(report, Report), + '$lgt_default_flag'(report, Report), write(' Compilation report: '), write(Report), nl, - lgt_default_flag(smart_compilation, Smart), + '$lgt_default_flag'(named_anonymous_vars, Named), + write(' Named anonymous variables: '), write(Named), nl, + '$lgt_default_flag'(code_prefix, Code), + write(' Compiled code functors prefix: '), writeq(Code), nl, + '$lgt_default_flag'(smart_compilation, Smart), write(' Smart compilation: '), write(Smart), nl, nl. -:- initialization(lgt_startup_message). +:- initialization('$lgt_startup_message'). diff --git a/library/logtalk/yap430.config b/library/logtalk/yap430.config index be1dd611e..a5c001a7c 100644 --- a/library/logtalk/yap430.config +++ b/library/logtalk/yap430.config @@ -1,7 +1,7 @@ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % % Logtalk - Object oriented extension to Prolog -% Release 2.13.0 +% Release 2.14.1 % % configuration file for YAP Prolog 4.3.x % @@ -31,9 +31,9 @@ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -% lgt_iso_predicate(?callable). +% '$lgt_iso_predicate'(?callable). -lgt_iso_predicate(_) :- +'$lgt_iso_predicate'(_) :- fail. @@ -48,9 +48,9 @@ lgt_iso_predicate(_) :- %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -% lgt_predicate_property(+callable, ?predicate_property) +% '$lgt_predicate_property'(+callable, ?predicate_property) -lgt_predicate_property(Pred, Prop) :- +'$lgt_predicate_property'(Pred, Prop) :- predicate_property(Pred, Prop). @@ -73,31 +73,31 @@ forall(Generate, Test) :- % use these definitions only if your compiler does % not provide call/1-8 as built-in predicates -lgt_call(F, A) :- +'$lgt_call'(F, A) :- call_with_args(F, A). -lgt_call(F, A1, A2) :- +'$lgt_call'(F, A1, A2) :- call_with_args(F, A1, A2). -lgt_call(F, A1, A2, A3) :- +'$lgt_call'(F, A1, A2, A3) :- call_with_args(F, A1, A2, A3). -lgt_call(F, A1, A2, A3, A4) :- +'$lgt_call'(F, A1, A2, A3, A4) :- call_with_args(F, A1, A2, A3, A4). -lgt_call(F, A1, A2, A3, A4, A5) :- +'$lgt_call'(F, A1, A2, A3, A4, A5) :- call_with_args(F, A1, A2, A3, A4, A5). -lgt_call(F, A1, A2, A3, A4, A5, A6) :- +'$lgt_call'(F, A1, A2, A3, A4, A5, A6) :- call_with_args(F, A1, A2, A3, A4, A5, A6). -lgt_call(F, A1, A2, A3, A4, A5, A6, A7) :- +'$lgt_call'(F, A1, A2, A3, A4, A5, A6, A7) :- call_with_args(F, A1, A2, A3, A4, A5, A6, A7). @@ -106,37 +106,37 @@ lgt_call(F, A1, A2, A3, A4, A5, A6, A7) :- % if your compiler provides call/1-8 as built-in % predicates rewrite these definitions using call(...), !. -lgt_once(F, A) :- +'$lgt_once'(F, A) :- call_with_args(F, A), !. -lgt_once(F, A1, A2) :- +'$lgt_once'(F, A1, A2) :- call_with_args(F, A1, A2), !. -lgt_once(F, A1, A2, A3) :- +'$lgt_once'(F, A1, A2, A3) :- call_with_args(F, A1, A2, A3), !. -lgt_once(F, A1, A2, A3, A4) :- +'$lgt_once'(F, A1, A2, A3, A4) :- call_with_args(F, A1, A2, A3, A4), !. -lgt_once(F, A1, A2, A3, A4, A5) :- +'$lgt_once'(F, A1, A2, A3, A4, A5) :- call_with_args(F, A1, A2, A3, A4, A5), !. -lgt_once(F, A1, A2, A3, A4, A5, A6) :- +'$lgt_once'(F, A1, A2, A3, A4, A5, A6) :- call_with_args(F, A1, A2, A3, A4, A5, A6), !. -lgt_once(F, A1, A2, A3, A4, A5, A6, A7) :- +'$lgt_once'(F, A1, A2, A3, A4, A5, A6, A7) :- call_with_args(F, A1, A2, A3, A4, A5, A6, A7), !. @@ -154,11 +154,11 @@ lgt_once(F, A1, A2, A3, A4, A5, A6, A7) :- %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -% lgt_file_extension(?atom, ?atom) +% '$lgt_file_extension'(?atom, ?atom) -lgt_file_extension(logtalk, '.lgt'). -lgt_file_extension(prolog, '.pl'). -lgt_file_extension(xml, '.xml'). +'$lgt_file_extension'(logtalk, '.lgt'). +'$lgt_file_extension'(prolog, '.pl'). +'$lgt_file_extension'(xml, '.xml'). @@ -169,27 +169,31 @@ lgt_file_extension(xml, '.xml'). %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -% lgt_default_flag(?atom, ?atom) +% '$lgt_default_flag'(?atom, ?atom) % % default values for all flags -lgt_default_flag(iso_initialization_dir, true). +'$lgt_default_flag'(iso_initialization_dir, true). -lgt_default_flag(xml, on). -lgt_default_flag(xsl, 'lgtxml.xsl'). +'$lgt_default_flag'(xml, on). +'$lgt_default_flag'(xsl, 'lgtxml.xsl'). -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_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_flag(report, on). +'$lgt_default_flag'(report, on). -lgt_default_flag(smart_compilation, off). +'$lgt_default_flag'(smart_compilation, off). -lgt_default_flag(startup_message, on). +'$lgt_default_flag'(startup_message, on). + +'$lgt_default_flag'(named_anonymous_vars, off). + +'$lgt_default_flag'(code_prefix, ''). @@ -200,25 +204,25 @@ lgt_default_flag(startup_message, on). %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -lgt_append([], List, List). -lgt_append([Head| Tail], List, [Head| Tail2]) :- - lgt_append(Tail, List, Tail2). +'$lgt_append'([], List, List). +'$lgt_append'([Head| Tail], List, [Head| Tail2]) :- + '$lgt_append'(Tail, List, Tail2). -lgt_member(Head, [Head| _]). -lgt_member(Head, [_| Tail]) :- - lgt_member(Head, Tail). +'$lgt_member'(Head, [Head| _]). +'$lgt_member'(Head, [_| Tail]) :- + '$lgt_member'(Head, Tail). -lgt_member_var(V, [H| _]) :- +'$lgt_member_var'(V, [H| _]) :- V == H. -lgt_member_var(V, [_| T]) :- - lgt_member_var(V, T). +'$lgt_member_var'(V, [_| T]) :- + '$lgt_member_var'(V, T). -lgt_proper_list([]). -lgt_proper_list([_| List]) :- - lgt_proper_list(List). +'$lgt_proper_list'([]). +'$lgt_proper_list'([_| List]) :- + '$lgt_proper_list'(List). @@ -229,27 +233,27 @@ lgt_proper_list([_| List]) :- %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -% lgt_file_exists(+atom) +% '$lgt_file_exists'(+atom) % % see if a file exist in the current directory -lgt_file_exists(File) :- +'$lgt_file_exists'(File) :- exists(File). -% lgt_load_prolog_code(+atom) +% '$lgt_load_prolog_code'(+atom) % % compile and load a Prolog file -lgt_load_prolog_code(File) :- +'$lgt_load_prolog_code'(File) :- reconsult(File). -% lgt_compare_file_mtimes(?atom, +atom, +atom) +% '$lgt_compare_file_mtimes'(?atom, +atom, +atom) % % compare file modification times -lgt_compare_file_mtimes(Result, File1, File2) :- +'$lgt_compare_file_mtimes'(Result, File1, File2) :- file_property(File1, mod_time(Time1)), file_property(File2, mod_time(Time2)), compare(Result, Time1, Time2). @@ -263,15 +267,15 @@ lgt_compare_file_mtimes(Result, File1, File2) :- %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -% lgt_keysort(+list, -list) +% '$lgt_keysort'(+list, -list) -lgt_keysort(List, Sorted) :- +'$lgt_keysort'(List, Sorted) :- keysort(List, Sorted). -% lgt_sort(+list, -list) +% '$lgt_sort'(+list, -list) -lgt_sort(List, Sorted) :- +'$lgt_sort'(List, Sorted) :- sort(List, Sorted). @@ -286,14 +290,14 @@ lgt_sort(List, Sorted) :- %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -% lgt_current_date(?Year, ?Month, ?Day) +% '$lgt_current_date'(?Year, ?Month, ?Day) -lgt_current_date(99, 2, 7). +'$lgt_current_date'(99, 2, 7). -% lgt_current_time(?Hours, ?Mins, ?Secs) +% '$lgt_current_time'(?Hours, ?Mins, ?Secs) -lgt_current_time(0, 0, 0). +'$lgt_current_time'(0, 0, 0). @@ -307,9 +311,9 @@ lgt_current_time(0, 0, 0). %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -% lgt_cpu_time(-Seconds) +% '$lgt_cpu_time'(-Seconds) -lgt_cpu_time(Seconds) :- +'$lgt_cpu_time'(Seconds) :- Seconds is cputime.