================================================================= Logtalk - Object oriented extension to Prolog Release 2.21.5 Copyright (c) 1998-2004 Paulo Moura. All Rights Reserved. ================================================================= Upgrading from Logtalk 1.x ========================== Logtalk 2.x is not compatible with programs written for version 1.x. However, you should be able to translate most programs to make them run under this new version. Most of the examples provided with previous versions have been rewritten to run under version 2.x. Use them as translation examples. Upgrading from a previous Logtalk 2.x version ============================================= If your Logtalk programs depend on some of the example files, it is advisable that you check your code against the new version before throwing away the older release. Logtalk source files will need to be recompiled because of the changes done in the version 2.5.0 to improve message sending performance. Logtalk version 2.7.0 provides the first cut of the Logtalk standard library. Most examples have been rewritten to take advantage of the library. Logtalk version 2.8.0 introduces a small change on the logtalk_compile/1-2 and logtalk_load/1-2 predicates that may imply updating your loader utility files: the first argument is now always a list of entities even if we want to compile or load a single entity. Logtalk version 2.9.0 changes compiled code functors postfixes from "_sdcl" and "_sdef" to "_idcl" and "_idef", implying recompilation of all objects, protocols, and categories. Logtalk version 2.10.0 changes some of the semantics of object dynamic predicates. See the release notes for a description of the changes. Logtalk version 2.14.4 removes the definition of the deprecated built-in predicate logtalk_version/3 (use current_logtalk_flag/3 instead). Logtalk version 2.14.5 changes compiled code in order to correct a bug where sending messages such as true/0 to an unknown object will succeeded instead of throwing the expected exception, implying recompilation of all objects, protocols, and categories. Logtalk version 2.14.7 changes compiled code in order to optimize the code generated by the compilation of dynamic predicate clauses. Logtalk version 2.15.0 changes the "authors" key in the directive info/1 to "author". All the XSLT, DTD, and XSD files have been update to conform to this change. If you use the directive info/1 in your programs, you will need to apply this change to take advantage of automatic generation of documenting files. Logtalk version 2.15.3 changes the format of the runtime entity tables, implying recompilation of all objects, protocols, and categories. Logtalk version 2.15.6 renamed the compiler option "named_anonymous_vars" to "underscore_vars" and changed the possible option values form "on/off" to "dont_care/singletons". Logtalk 2.16.0 improves support for the declaration and use of operators local to objects and categories. Recompilation of any objects and categories containing operator declarations is needed in order to take advantage of the improvements made. Logtalk 2.16.1 now checks for attempts to redefined built-in Logtalk control constructs when compiling source files. These checks may generate compilation errors on files containing bugs that are not detected on previous versions of the compiler. Logtalk version 2.16.2 changed the possible option values of the read-only compiler option "startup_message" to "none", "banner", and "flags". Default value is "flags" (print both banner and default flag values). Logtalk version 2.17.1 removes predicate nth/3 from library entities listp, list, and difflist (replaced by the predicates nth0/3 and nth1/3). Logtalk version 2.20.0 updates the semantics of the uses/1 entity directive to accept as argument a single object identifier (this change is needed in order to ensure compatibility with the new uses/2 predicate directive). Logtalk version 2.21.2 adds a new clause to the code generated when compiling entity in order to support the new alias/1 predicate property, implying recompilation of all objects, protocols, and categories.