| 1 | ================================================================= |
|---|
| 2 | Logtalk - Object oriented extension to Prolog |
|---|
| 3 | Release 2.25.2 |
|---|
| 4 | |
|---|
| 5 | Copyright (c) 1998-2005 Paulo Moura. All Rights Reserved. |
|---|
| 6 | ================================================================= |
|---|
| 7 | |
|---|
| 8 | |
|---|
| 9 | Upgrading from Logtalk 1.x |
|---|
| 10 | ========================== |
|---|
| 11 | |
|---|
| 12 | Logtalk 2.x is not compatible with programs written for Logtalk 1.x. |
|---|
| 13 | However, you should be able to translate most programs to make them |
|---|
| 14 | run under Logtalk 2.x. Most of the examples provided with Logtalk 1.x |
|---|
| 15 | have been rewritten to run under Logtalk 2.x. You may use them as |
|---|
| 16 | translation examples. |
|---|
| 17 | |
|---|
| 18 | |
|---|
| 19 | Upgrading from a previous Logtalk 2.x versions |
|---|
| 20 | ============================================== |
|---|
| 21 | |
|---|
| 22 | If your Logtalk programs depend on some of the example files, it is |
|---|
| 23 | advisable that you check your code against the new version before |
|---|
| 24 | throwing away the older release. |
|---|
| 25 | |
|---|
| 26 | Logtalk source files will need to be recompiled because of the changes |
|---|
| 27 | done in the version 2.5.0 to improve message sending performance. |
|---|
| 28 | |
|---|
| 29 | Logtalk version 2.7.0 provides the first cut of the Logtalk standard library. |
|---|
| 30 | Most examples have been rewritten to take advantage of the library. |
|---|
| 31 | |
|---|
| 32 | Logtalk version 2.8.0 introduces a small change on the logtalk_compile/1-2 |
|---|
| 33 | and logtalk_load/1-2 predicates that may imply updating your loader utility |
|---|
| 34 | files: the first argument is now always a list of entities even if we want |
|---|
| 35 | to compile or load a single entity. |
|---|
| 36 | |
|---|
| 37 | Logtalk version 2.9.0 changes compiled code functors postfixes from "_sdcl" |
|---|
| 38 | and "_sdef" to "_idcl" and "_idef", implying recompilation of all objects, |
|---|
| 39 | protocols, and categories. |
|---|
| 40 | |
|---|
| 41 | Logtalk version 2.10.0 changes some of the semantics of object dynamic |
|---|
| 42 | predicates. See the release notes for a description of the changes. |
|---|
| 43 | |
|---|
| 44 | Logtalk version 2.14.4 removes the definition of the deprecated built-in |
|---|
| 45 | predicate logtalk_version/3 (use current_logtalk_flag/3 instead). |
|---|
| 46 | |
|---|
| 47 | Logtalk version 2.14.5 changes compiled code in order to correct a bug |
|---|
| 48 | where sending messages such as true/0 to an unknown object will succeeded |
|---|
| 49 | instead of throwing the expected exception, implying recompilation of all |
|---|
| 50 | objects, protocols, and categories. |
|---|
| 51 | |
|---|
| 52 | Logtalk version 2.14.7 changes compiled code in order to optimize the |
|---|
| 53 | code generated by the compilation of dynamic predicate clauses. |
|---|
| 54 | |
|---|
| 55 | Logtalk version 2.15.0 changes the "authors" key in the directive info/1 to |
|---|
| 56 | "author". All the XSLT, DTD, and XSD files have been update to conform to |
|---|
| 57 | this change. If you use the directive info/1 in your programs, you will need |
|---|
| 58 | to apply this change to take advantage of automatic generation of documenting |
|---|
| 59 | files. |
|---|
| 60 | |
|---|
| 61 | Logtalk version 2.15.3 changes the format of the runtime entity tables, |
|---|
| 62 | implying recompilation of all objects, protocols, and categories. |
|---|
| 63 | |
|---|
| 64 | Logtalk version 2.15.6 renamed the compiler flag "named_anonymous_vars" to |
|---|
| 65 | "underscore_vars" and changed the possible option values form "on/off" to |
|---|
| 66 | "dont_care/singletons". |
|---|
| 67 | |
|---|
| 68 | Logtalk 2.16.0 improves support for the declaration and use of operators |
|---|
| 69 | local to objects and categories. Recompilation of any objects and categories |
|---|
| 70 | containing operator declarations is needed in order to take advantage of the |
|---|
| 71 | improvements made. |
|---|
| 72 | |
|---|
| 73 | Logtalk 2.16.1 now checks for attempts to redefined built-in Logtalk control |
|---|
| 74 | constructs when compiling source files. These checks may generate compilation |
|---|
| 75 | errors on files containing bugs that are not detected on previous versions of |
|---|
| 76 | the compiler. |
|---|
| 77 | |
|---|
| 78 | Logtalk version 2.16.2 changed the possible option values of the read-only |
|---|
| 79 | compiler flag "startup_message" to "none", "banner", and "flags". Default |
|---|
| 80 | value is "flags" (print both banner and default flag values). |
|---|
| 81 | |
|---|
| 82 | Logtalk version 2.17.1 removes predicate nth/3 from library entities listp, |
|---|
| 83 | list, and difflist (replaced by the predicates nth0/3 and nth1/3). |
|---|
| 84 | |
|---|
| 85 | Logtalk version 2.20.0 updates the semantics of the uses/1 entity directive |
|---|
| 86 | to accept as argument a single object identifier (this change is needed in |
|---|
| 87 | order to ensure compatibility with the new uses/2 predicate directive). |
|---|
| 88 | |
|---|
| 89 | Logtalk version 2.21.2 adds a new clause to the code generated when compiling |
|---|
| 90 | entity in order to support the new alias/1 predicate property, implying |
|---|
| 91 | recompilation of all objects, protocols, and categories. |
|---|
| 92 | |
|---|
| 93 | Logtalk version 2.22.0 adds support for using the notation <library>(<file>) |
|---|
| 94 | when compiling and loading source files. Logtalk applications using this new |
|---|
| 95 | notation will need to be modified in order to run in previous Logtalk versions. |
|---|
| 96 | In addition, the exceptions generated by the predicates logtalk_compile/1-2 |
|---|
| 97 | and logtalk_load/1-2 have been updated to take into account this new feature. |
|---|
| 98 | |
|---|
| 99 | Logtalk version 2.22.2 adds stricter checking for the documenting directives |
|---|
| 100 | (info/1 and info/2), which can lead to compilation errors on entities which |
|---|
| 101 | compiled successfully on previous Logtalk versions. |
|---|
| 102 | |
|---|
| 103 | Logtalk version 2.22.5 adds new predicates to all config files (consult the |
|---|
| 104 | release notes for details). If you are using custom config files, be sure to |
|---|
| 105 | update them by coping the definition of the new predicates. |
|---|
| 106 | |
|---|
| 107 | Logtalk version 2.23.0 features new, optimized implementations of the database |
|---|
| 108 | built-in methods, implying the recompilation of all objects, protocols, and |
|---|
| 109 | categories. |
|---|
| 110 | |
|---|
| 111 | Logtalk version 2.25.0 drops support for source metafiles and .mlgt file name |
|---|
| 112 | extension as this version features a new, file-based compiler supporting the |
|---|
| 113 | definition of any number of entities in a single file. Older code using source |
|---|
| 114 | metafiles will need to rename the file name extensions from .mlgt to .lgt. |
|---|
| 115 | |
|---|
| 116 | Logtalk version 2.25.1 updates the compiler to generate XML documenting files |
|---|
| 117 | whose names always contain the arity of the entity identifier appended at the |
|---|
| 118 | end (using the format "_arity"). This change implied updates to the lgt2xml.* |
|---|
| 119 | and lgt2html.* shell scripts which render them incompatible with the XML files |
|---|
| 120 | generated by previous Logtalk versions. |
|---|