git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1151 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
		
			
				
	
	
		
			1266 lines
		
	
	
		
			45 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			1266 lines
		
	
	
		
			45 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
| =================================================================
 | |
| Logtalk - Object oriented extension to Prolog
 | |
| Release 2.21.1
 | |
| 
 | |
| Copyright (c) 1998-2004 Paulo Moura.  All Rights Reserved.
 | |
| =================================================================
 | |
| 
 | |
| 
 | |
| RELEASE NOTES
 | |
| =============
 | |
| 
 | |
| 
 | |
| 2.21.1 - September 27, 2004
 | |
| 
 | |
| 	Added experimental support for a new built-in method, expand_term/2, which 
 | |
| 	allows access to the Logtalk grammar rule translator. Corrected bug in the 
 | |
| 	expansion of \+/1 in grammar rule bodies. Optimized code generated for 
 | |
| 	message sending calls in the body of grammar rules. Improved error handling 
 | |
| 	of the built-in methods phrase/2 and phrase/3. Added new section on definite 
 | |
| 	clause grammars to the user manual. Added two new objects to the "dcgs" 
 | |
| 	example, dcgtest and bypass, containing test cases for the Logtalk DCG 
 | |
| 	translator and illustrating some programming techniques with grammar rules.
 | |
| 
 | |
| 	Corrected a bug in the implementation of the built-in method clause/2 which 
 | |
| 	prevented access to clauses of local dynamic predicates.
 | |
| 
 | |
| 	Corrected some dead links on the XHTML manuals.
 | |
| 
 | |
| 	Corrected a bug in the syntax coloring of numbers on the SubEthaEdit 2.x 
 | |
| 	text editor.
 | |
| 
 | |
| 
 | |
| 2.21.0 - September 14, 2004
 | |
| 
 | |
| 	Added a new predicate directive, alias/3, which allows the definition of 
 | |
| 	alternative predicate names in order to improve readability of inherited 
 | |
| 	features and to solve conflicts between implemented, imported, or inherited 
 | |
| 	predicates.
 | |
| 
 | |
| 	Added new example, "aliases", illustrating the use of the new alias/3 
 | |
| 	predicate directive for improving readability of inherited features.
 | |
| 
 | |
| 	Added new example, "diamonds", illustrating problems and solutions for the 
 | |
| 	"diamond problem" (multi-inheritance conflicts and ambiguities) using the 
 | |
| 	new alias/3 predicate directive.
 | |
| 
 | |
| 	Allow categories to import other categories, i.e. allow categories to be 
 | |
| 	defined as a composition of other categories. This feature should only be 
 | |
| 	used when extending a category without breaking its functional cohesion 
 | |
| 	(for example, when a modified version of a category is needed for importing 
 | |
| 	into several unrelated objects). 
 | |
| 
 | |
| 	Added new example, "engines", illustrating importing a category from another 
 | |
| 	category.
 | |
| 
 | |
| 	Updated the syntax coloring configuration files for the supported text 
 | |
| 	editors for the new alias/3 predicate directive.
 | |
| 
 | |
| 	Added autocomplete strings for Logtalk methods and for Logtalk and Prolog 
 | |
| 	built-in predicates and directives to the SubEthaEdit 2.x text editor.
 | |
| 
 | |
| 	Corrected a bug which prevented compilation of metafiles containing 
 | |
| 	parametric entities.
 | |
| 
 | |
| 
 | |
| 2.20.2 - August 31, 2004
 | |
| 
 | |
| 	Added a Windows JScript script for installing Logtalk. Improved the Windows 
 | |
| 	JScript scripts used for easy integration of Logtalk with selected Prolog 
 | |
| 	compilers.
 | |
| 
 | |
| 	Improved user manual section on defining object and category metapredicates 
 | |
| 	and on calling non-stardard Prolog built-in metapredicates. Improved the 
 | |
| 	description of some compiler options.
 | |
| 
 | |
| 	Added some files missing from the "errors" example (which should have been 
 | |
| 	included in the previous release).
 | |
| 
 | |
| 	Added basic syntax coloring support for the BBEdit 8.x text editor.
 | |
| 
 | |
| 
 | |
| 2.20.1 - August 19, 2004
 | |
| 
 | |
| 	Added Windows JScript scripts for easy integration of Logtalk with CIAO and 
 | |
| 	GNU Prolog.
 | |
| 
 | |
| 	Added encoding attribute (set to UTF-8) to the xsl:output tag in the 
 | |
| 	lgtxml.xsl, lgthtml.xsl, and lgtxhtml.xsl files.
 | |
| 
 | |
| 	Replaced the Windows JScript scripts lgt2pdf.js and lgt2html.js by their 
 | |
| 	final versions (the wrong ones shipped with Logtalk version 2.20.0).
 | |
| 
 | |
| 	Updated the "errors" example to illustrate possible conflict errors when 
 | |
| 	using the uses/2 directive.
 | |
| 
 | |
| 	Updated the RPM logtalk.spec file to use the .tgz archive extension.
 | |
| 
 | |
| 
 | |
| 2.20.0 - August 16, 2004
 | |
| 
 | |
| 	Added support for the uses/2 predicate directive (whose semantics is similar 
 | |
| 	to C++ using-declarations). Updated the uses/1 entity directive to accept as 
 | |
| 	argument a single object identifier.
 | |
| 
 | |
| 	Improved installation instructions for Windows users.
 | |
| 
 | |
| 	Added four new sample bash shell scripts and Windows JScript scripts for 
 | |
| 	converting XML documenting files to PDF, HTML, and XHTML using several XSL 
 | |
| 	processors.
 | |
| 
 | |
| 	Added missing namespace to XSL files in order to generated valid (X)HTML 
 | |
| 	files with recent versions of XSLT processors.
 | |
| 
 | |
| 	Updated the User Manual documentation on converting XML documenting files 
 | |
| 	to other formats.
 | |
| 
 | |
| 	Removed the texml.xsl XSLT file as the TeXMLatte application it depends on 
 | |
| 	is no longer available.
 | |
| 
 | |
| 	Added Windows JScript script for copying the Logtalk examples, library, and 
 | |
| 	xml directories to the user directory.
 | |
| 
 | |
| 	Added Windows JScript scripts for easy integration of Logtalk with ECLiPSe, 
 | |
| 	SWI-Prolog, SICStus Prolog, and YAP.
 | |
| 
 | |
| 	Added missing extension for source metafiles to the SWI-Prolog hook file.
 | |
| 	
 | |
| 	Corrected a bug in the lgtxhtml.xsl XSLT file where a wrong reference to 
 | |
| 	the Logtalk CSS file is being used in the xml-stylesheet tag.
 | |
| 
 | |
| 	The iso_initialization_dir/1 compiler option is now a read only flag, 
 | |
| 	defined in the configuration files.
 | |
| 
 | |
| 
 | |
| 2.19.1 - August 2, 2004
 | |
| 
 | |
| 	Corrected a bug where entities could not be reloaded if they depend on 
 | |
| 	other, not yet loaded entities.
 | |
| 
 | |
| 	Corrected a bug where compiler options would not be used when compiling 
 | |
| 	source metafiles.
 | |
| 
 | |
| 	Corrected several typos on the Logtalk manuals.
 | |
| 
 | |
| 
 | |
| 2.19.0 - July 26, 2004
 | |
| 
 | |
| 	Added support for defining more than one entity per file using Logtalk 
 | |
| 	source metafiles (*.mlgt), which the runtime engine automatically splits 
 | |
| 	on single entity source files plus loading and compiling helper files.
 | |
| 
 | |
| 	Updated the URL used on the automatically generated XML documenting files 
 | |
| 	when compiling entities with the option doctype(web).
 | |
| 
 | |
| 	Improved error checking when compiling calls to the {}/1 control construct.
 | |
| 
 | |
| 	Corrected several typos and some outdated links on the Logtalk manuals.
 | |
| 
 | |
| 
 | |
| 2.18.0 - July 9, 2004
 | |
| 
 | |
| 	Added caching of method lookups in order to improve message processing 
 | |
| 	performance (including messages to self and super calls). Applied several 
 | |
| 	optimizations to runtime translation of messages in order to further 
 | |
| 	improve performance.
 | |
| 
 | |
| 	Improved error checking while parsing and compiling messages to self.
 | |
| 
 | |
| 	Update ECLiPSe config files to compile the Prolog files generated by Logtalk 
 | |
| 	(when compiling source files) in optimized mode instead of traceable mode.
 | |
| 
 | |
| 	Updated description of patches needed for running Logtalk with XSB, added 
 | |
| 	a shell script for easy integration of Logtalk with this Prolog compiler, 
 | |
| 	and corrected a problem with its corresponding config file.
 | |
| 
 | |
| 	Added multifile/1 directive to the syntax coloring configuration files of the 
 | |
| 	supported text editors.
 | |
| 
 | |
| 
 | |
| 2.17.2 - June 14, 2004
 | |
| 
 | |
| 	Updated the Logtalk compiler to allow compilation of source files which 
 | |
| 	contain only directives and no entity definition.
 | |
| 
 | |
| 	Simplified loading of library and example entities by using Logtalk source 
 | |
| 	files as loader files.
 | |
| 
 | |
| 	Some improvements to the documentation, including the QUICK_START file and 
 | |
| 	the User Manual for first-time users, and to the example descriptions.
 | |
| 
 | |
| 	Corrected a bug in handling of local object operators that are also global 
 | |
| 	operators.
 | |
| 
 | |
| 	Corrected a bug where dynamic directives are not being generated for dynamic 
 | |
| 	predicates that lack a scope directive or an initial set of clauses.
 | |
| 
 | |
| 	Corrected a bug where local dynamic predicates would need a private scope 
 | |
| 	directive in order to allow clauses of the predicate to be retracted.
 | |
| 
 | |
| 	Simplified compilation of dynamic and discontiguous predicate directives.
 | |
| 
 | |
| 	Added new "logic" example implementing a translator from logic propositions 
 | |
| 	to conjunctive normal form.
 | |
| 
 | |
| 	Corrected a problem with wrong end-on-lines on some files.
 | |
| 
 | |
| 	Added a shell script for easy integration of Logtalk with CIAO Prolog.
 | |
| 
 | |
| 
 | |
| 2.17.1 - June 7, 2004
 | |
| 
 | |
| 	Added custom handling of specification of predicate exceptions in info/2 
 | |
| 	documenting directives when writing XML documenting files (declared as 
 | |
| 	"exceptions is [Cond1-Term1, Cond2-Term2, ...]"; each pair (Condi, Termi) 
 | |
| 	represents an error condition and its respective exception). 
 | |
| 
 | |
| 	Changed debugger command "e" to print exception terms instead of exiting 
 | |
| 	Logtalk session.
 | |
| 
 | |
| 	Corrected a compilation error with B-Prolog due to operator priorities.
 | |
| 
 | |
| 	Corrected a possible problem with the redefinition of loaded entities that 
 | |
| 	define (possibly at runtime) dynamic predicates. All clauses for an entity 
 | |
| 	dynamic predicates are retracted before loading the new entity definition.
 | |
| 
 | |
| 	Corrected a potential bug when pretty printing terms with variables in the 
 | |
| 	debugger and in the created XML documenting files.
 | |
| 
 | |
| 	Added four more DCGs examples ("walker movements", "iterative shell command 
 | |
| 	parsing", "bill of materials", and "command language").
 | |
| 	
 | |
| 	New "puzzles" and "metainterpreters" examples.
 | |
| 
 | |
| 	Added a mode bundle for the SubEthaEdit 2.x (MacOS X) text editor providing 
 | |
| 	syntax coloring for editing Logtalk source files. Optimized some of the 
 | |
| 	regular expressions in the syntax coloring files for the Kate/Kwrite and Vim 
 | |
| 	text editors.
 | |
| 
 | |
| 	Removed predicate nth/3 from library entities listp, list, and difflist. 
 | |
| 	Replaced by the predicates nth0/3 and nth1/3. Added new predicates nth1/4 
 | |
| 	and nth0/4.
 | |
| 
 | |
| 	Updated the config file for Quintus Prolog to make use of the "files" 
 | |
| 	library.
 | |
| 
 | |
| 	Added experimental implementations for some Prolog compilers of the library 
 | |
| 	portable protocol for operating system access (systemp.lgt). See the file 
 | |
| 	library/experimental/NOTES for details.
 | |
| 
 | |
| 
 | |
| 2.17.0 - April 26, 2004
 | |
| 
 | |
| 	Added built-in debugging support implemented through the definition of a 
 | |
| 	new pseudo-object named "debugger". Added "debug" compiler option. Renamed 
 | |
| 	library entities "debuggerp" and "debugger" to, respectively, "event_dbgp" 
 | |
| 	and "event_dbg".
 | |
| 
 | |
| 	Improved installation instructions for multi-user environments. Added 
 | |
| 	a shell script for installing Logtalk in Unix and Unix-like operating 
 | |
| 	systems. Added a shell script for copying Logtalk xml, examples, and 
 | |
| 	library directories to the user home directory.
 | |
| 
 | |
| 	Added a logtalk.spec file for building Linux RPMs from sources.
 | |
| 
 | |
| 	Added a set of shell scripts for easy integration of Logtalk with ECLiPSe, 
 | |
| 	GNU Prolog, Qu-Prolog, SICStus Prolog, SWI-Prolog, and YAP.
 | |
| 
 | |
| 	Corrected bug in the definition of the pseudo-object "user" that resulted 
 | |
| 	in mixed up metapredicate and type predicate properties.
 | |
| 
 | |
| 	Removed config files for outdated versions of Qu-Prolog, SWI-Prolog, ECLiPSe,
 | |
| 	K-Prolog, CIAO, YAP, Amzi! Prolog, LPA Win-Prolog, SICStus Prolog, and XSB.
 | |
| 
 | |
| 
 | |
| 2.16.2 - April 2, 2004
 | |
| 
 | |
| 	Corrected a bug in the library category monitor (file library/monitor.lgt) 
 | |
| 	that prevents its compilation.
 | |
| 
 | |
| 	Changed the possible values of the read-only flag startup_message (defined 
 | |
| 	in the config files) to "flags" (print banner and flag values), "banner" 
 | |
| 	(print only the banner), and "none" (do not print neither the banner nor the 
 | |
| 	flag values). Default value is "flags".
 | |
| 
 | |
| 	Updated the "errors" example to illustrate the error messages thrown when 
 | |
| 	trying to redefine Logtalk built-in control constructs.
 | |
| 
 | |
| 	Corrected a small problem with the Logtalk language specification file for 
 | |
| 	Apple's Xcode IDE.
 | |
| 
 | |
| 	Added preliminary support for syntax coloring using the Windows text editor 
 | |
| 	Crimson Editor.
 | |
| 
 | |
| 
 | |
| 2.16.1 - March 23, 2004
 | |
| 
 | |
| 	The local built-in method parameter/2 can now be used inside categories 
 | |
| 	(but please read the warnings about such practice on the user manual).
 | |
| 
 | |
| 	Updated the Logtalk compiler to report an error when the user tries to 
 | |
| 	redefine a message sending or external call control construct inside an 
 | |
| 	object or category.
 | |
| 
 | |
| 	Corrected a bug in the compilation of metacalls whose meta-arguments are 
 | |
| 	variables.
 | |
| 
 | |
| 	Removed references to file sax.jar from the scripts used to convert XML 
 | |
| 	documenting files into (X)HTML. Updated scripts html.sh, htmlnt.cmd, and 
 | |
| 	htmldos.bat to use XT 20020426a or later version.
 | |
| 
 | |
| 	Improved syntax coloring accuracy of built-in predicates and methods for 
 | |
| 	the SubEthaEdit text editor.
 | |
| 
 | |
| 	Updated config file for Qu-Prolog 6.4.
 | |
| 
 | |
| 
 | |
| 2.16.0 - March 3, 2004
 | |
| 
 | |
| 	Logtalk is now distributed under the Artistic License 2.0.
 | |
| 
 | |
| 	Operators declared inside an entity are now local to the entity, not 
 | |
| 	affecting the global operator table (complying with the Logtalk language 
 | |
| 	specification). Input and output of terms from inside objects and 
 | |
| 	categories now work as expected in the presence of local operator 
 | |
| 	declarations. Added a new example named "operators".
 | |
| 
 | |
| 	Updated built-in method predicate_property/2 for returning metapredicate/1 
 | |
| 	properties for both Logtalk and Prolog metapredicates.
 | |
| 
 | |
| 	Added support for calls to non-ISO Prolog standard built-in metapredicates 
 | |
| 	inside objects and categories. Added support for the declaration of non-ISO 
 | |
| 	Prolog standard metapredicates in the config files.
 | |
| 
 | |
| 	Small change to the way the Logtalk compiler reports the compilation of
 | |
| 	entities. Small optimizations to the compilation of Logtalk source files.
 | |
| 
 | |
| 	Corrected a bug where calls to Logtalk built-in predicates would be 
 | |
| 	reported as non-portable when the value of compiler option portability is 
 | |
| 	set to warning.
 | |
| 
 | |
| 	New config file for Qu-Prolog 6.4 (see the configs/NOTES file for details).
 | |
| 
 | |
| 	Corrected a problem with the syntax coloring of quoted atoms and strings 
 | |
| 	in the SubEthaEdit text editor. Added more accurate syntax highlight for
 | |
| 	built-in methods and built-in predicates.
 | |
| 
 | |
| 	Updated the syntax coloring configuration files for all supported text 
 | |
| 	editors to recognize the file extension used by the config files.
 | |
| 
 | |
| 
 | |
| 2.15.6 - February 9, 2004
 | |
| 
 | |
|     Added "xmlspec" compiler option in order to specify the extension (dtd 
 | |
|     or xsd) of the file describing the XML documenting files specification.
 | |
| 
 | |
| 	Renamed compiler option "named_anonymous_vars" to the more appropriated 
 | |
| 	name "underscore_vars". Changed possible option values to "dont_care" and 
 | |
| 	"singletons" (default).
 | |
| 
 | |
|     Added XSLT file for converting XML documenting files to XHTML 1.0 Strict 
 | |
|     files. Set the default encoding of all XSLT files to UTF-8.
 | |
| 
 | |
|     Added syntax coloring support for the KDE Kate and Kwrite text editors.
 | |
| 
 | |
|     Improved syntax coloring configuration files for VIM, jEdit, NEdit, 
 | |
|     SubEthaEdit, and Emacs text editors.
 | |
| 
 | |
| 	Removed outdated support for MacOS X Project Builder and added support 
 | |
| 	for the new MacOS X Xcode developer tool.
 | |
| 
 | |
| 	Corrected bug in the built-in predicate current_logtalk_flag/2 that 
 | |
| 	prevented some flag values from being returned after using the built-in 
 | |
| 	predicate set_logtalk_flag/2.
 | |
| 
 | |
| 	Corrected bug in the shapes example (wrong placement of the declaration 
 | |
| 	of the predicate side/1).
 | |
| 
 | |
| 
 | |
| 2.15.5 - December 30, 2003
 | |
| 
 | |
| 	Make operator ^^/1 right-associative for consistency with remaining 
 | |
| 	operator declarations.
 | |
| 
 | |
| 	Added file BIBLIOGRAPHY containing a list of Logtalk publications in 
 | |
| 	BibTeX format.
 | |
| 
 | |
| 	Added a font-lock file for Emacs providing syntax coloring for editing 
 | |
| 	Logtalk source files.
 | |
| 
 | |
|     Added an implementation of the Smalltalk dependent mechanism to the 
 | |
|     standard Logtalk library.
 | |
| 
 | |
|     Updated the config file for ECLiPSe 5.4~5.7 with missing ISO Prolog 
 | |
|     predicate definitions needed for successful compilation of all entities 
 | |
|     in the Logtalk standard library.
 | |
| 
 | |
| 	Updated manual pages to comply with XHTML 1.0 Strict and to provide 
 | |
| 	better navigation.
 | |
| 
 | |
| 
 | |
| 2.15.4 - July 9, 2003
 | |
| 
 | |
| 	Corrected a spurious backtracking bug in the DCG rule translator. Added 
 | |
| 	two more examples of DCGs.
 | |
| 
 | |
| 	New config file for XSB 2.6. Updated Logtalk compiler to compile cleanly 
 | |
| 	under XSB after applying the patch described in configs/NOTES.
 | |
| 
 | |
| 	Updated SWI-Prolog config file to hide compiled entity predicates (requires 
 | |
| 	SWI-Prolog 5.2.3 or later version). New optional file configs/swihook.pl 
 | |
| 	contains hook code that allows Logtalk entities to be compiled and loaded 
 | |
| 	using SWI-Prolog load_files/2 and consult/1 predicates.
 | |
| 
 | |
| 	Syntax definition file for the Hydra 1.1 (MacOS X) text editor providing 
 | |
| 	syntax coloring for editing Logtalk source files.
 | |
| 
 | |
| 	Updated syntax coloring files for jEdit, NEdit, Vim, and TextPad in order 
 | |
| 	to recognize character code constants (0'x) and the DCG operator -->/2.
 | |
| 
 | |
| 
 | |
| 2.15.3 - June 27, 2003
 | |
| 
 | |
| 	Updated experimental support for DCG rules to prevent over-simplification 
 | |
| 	of unification goals in the compilation of rules to clauses. Push-back 
 | |
| 	lists can now be used on rule heads.
 | |
| 
 | |
| 	The compilation mode of an entity (static/dynamic) is now stored in the 
 | |
| 	corresponding entity table (implying recompilation of all entities).
 | |
| 
 | |
| 	Updated GNU Prolog config file to hide compiled entity predicates.
 | |
| 
 | |
| 	Updated SWI-Prolog config file for better integration of Logtalk with 
 | |
| 	this compiler.
 | |
| 
 | |
| 
 | |
| 2.15.2 - April 2, 2003
 | |
| 
 | |
| 	Experimental support for DCG rules inside categories and objects. Added 
 | |
| 	built-in methods phrase/2 and phrase/3.
 | |
| 
 | |
| 	Updated GNU Prolog config file to not hide compiled entity predicates in 
 | |
| 	order to avoid incompatibilities with dynamic entities.
 | |
| 
 | |
| 
 | |
| 2.15.1 - March 8, 2003
 | |
| 
 | |
| 	New example, msglog, of using events and monitors to record, replay, and 
 | |
| 	print user messages.
 | |
| 
 | |
| 	Corrected a typo on the jEdit templates that resulted in syntax errors.
 | |
| 	Corrected wrong year format in info/1 directive in all entity templates.
 | |
| 	Added missing version info key to jEdit prototype template.
 | |
| 
 | |
| 	Corrected documentation of built-in local methods self/1 and sender/1.
 | |
| 	Updated documentation of built-in local methods parameter/2 and this/1.
 | |
| 
 | |
| 
 | |
| 2.15.0 - February 5, 2003
 | |
| 
 | |
| 	Changed "authors" key in info/1 directive to "author".
 | |
| 
 | |
| 	Corrected documentation of built-in local method this/1.
 | |
| 
 | |
| 	New geometric shapes example implemented in two versions, one 
 | |
| 	prototype-based and the other one class-based.
 | |
| 
 | |
| 	Improved support for jEdit text editor by adding a set of programming 
 | |
| 	templates for use with the editor Templates plug-in.
 | |
| 
 | |
| 	Added basic support for syntax highlighting and programming templates 
 | |
| 	for MacOS X Project builder.
 | |
| 
 | |
| 
 | |
| 2.14.7 - January 10, 2003
 | |
| 
 | |
| 	Corrected a bug in the built-in methods asserta/1 and assertz/1 when 
 | |
| 	asserting predicate rules.
 | |
| 
 | |
| 	The built-in predicates logtalk_compile/1-2 and logtalk_load/1-2 now 
 | |
| 	accept both an entity (an atom) or a list of entities (a list of atoms).
 | |
| 
 | |
| 	Optimized the code generated when compiling or asserting clauses for 
 | |
| 	dynamic predicates.
 | |
| 
 | |
| 	Optimized protected inheritance performance on some Prolog compilers.
 | |
| 
 | |
| 
 | |
| 2.14.6 - December 31, 2002
 | |
| 
 | |
| 	Corrected a bug where the opening directive of an object that, 
 | |
| 	simultaneously, implements a protocol, imports a categoty, instantiates 
 | |
| 	a class, and specializes a superclass, will not be recognized.
 | |
| 
 | |
| 
 | |
| 2.14.5 - December 20, 2002
 | |
| 
 | |
| 	Simplified dynamic table of predicate declarations by removing two 
 | |
| 	redundant arguments.
 | |
| 	
 | |
| 	Corrected a bug where sending messages such as true/0 or !/0 to an 
 | |
| 	unknown object succeeded instead of throwing the correct exception.
 | |
| 
 | |
| 	Simplified the code used to generate links in the lgtpdfa4.xsl and 
 | |
| 	lgtpdfus.xsl XSLT files.
 | |
| 
 | |
| 
 | |
| 2.14.4 - November 5, 2002
 | |
| 
 | |
| 	Removed definition of depracated built-in predicate logtalk_version/3.
 | |
| 
 | |
| 	Show flag names when printing at startup the default flag values.
 | |
| 
 | |
| 	Small change to messages printed on console with smart compilation of 
 | |
| 	source files turned on.
 | |
| 
 | |
| 	Updated YAP 4.3.x config file to use the YAP "system" library to access 
 | |
| 	the operating system for time, date, and file properties (enabling smart 
 | |
| 	source code compilation).
 | |
| 
 | |
| 	Updated the lgtpdfa4.xsl and lgtpdfus.xsl XSLT files to workaround a bug 
 | |
| 	in the PassiveTeX 1.21 XSL:FO processor.
 | |
| 
 | |
| 
 | |
| 2.14.3 - Sptember 16, 2002
 | |
| 
 | |
| 	New compiler option, doctype, to set the doctype reference (if any) 
 | |
| 	in the XML documenting files. Default value is "local" for backward 
 | |
| 	compatibility. Updated the user manual section on compiler options.
 | |
| 
 | |
| 	The Logtalk built-in predicate logtalk_version/3 should be considered 
 | |
| 	deprecated (use current_logtalk_flag/3 instead). All references to this 
 | |
| 	predicate have been removed from the manuals.
 | |
| 
 | |
| 	Updated the jEdit syntax coloring config file for the new jEdit 4.1 
 | |
| 	version.
 | |
| 
 | |
| 	Updated the lgtpdfa4.xsl and lgtpdfus.xsl XSLT files for compatibility 
 | |
| 	with the XSL:FO processors Apache FOP 0.20.4, PassiveTeX, and RenderX 
 | |
| 	and with the XSL W3C Recommendation of October 15, 2001. Updated the 
 | |
| 	pdf.bat and pdf.sh scripts to reference the latest version of the 
 | |
| 	Apache FOP processor (0.20.4).
 | |
| 
 | |
| 	Changed the shell scripts html.sh and pdf.sh for compatibility with the 
 | |
| 	sh, bash, and zsh shells.
 | |
| 
 | |
| 
 | |
| 2.14.2 - August 26, 2002
 | |
| 
 | |
| 	Calls to built-in method parameter/2 are now compiled inline, improving 
 | |
| 	call performance.
 | |
| 
 | |
| 	Updated Logtalk compiler to clean temporary compilation predicates after 
 | |
| 	compiling an entity instead of only before compilation.
 | |
| 
 | |
| 	Updated YAP 4.3.x config file for better Logtalk integration by hiding 
 | |
| 	all internal compiler, runtime, and compiled entities static predicates.
 | |
| 
 | |
| 	Updated GNU Prolog config file for better Logtalk integration by hiding 
 | |
| 	all internal compiler, runtime, and compiled entities predicates.
 | |
| 
 | |
| 	Updated the XSLT conversion scripts lgtxml.xsl and lgthtml.xsl to correct 
 | |
| 	some HTML conformance errors in the generated pages.
 | |
| 
 | |
| 	Corrected some XHTML conformance errors in the manual pages.
 | |
| 
 | |
| 
 | |
| 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 
 | |
| 	write_term/3. Goals are better portability of the generated Prolog files 
 | |
| 	and avoid issues with clauses with long bodies for Prolog compilers that 
 | |
| 	use a term print depth limit to prevent problems with cyclic terms.
 | |
| 
 | |
| 	Added report of default flag values at Logtalk startup.
 | |
| 
 | |
| 	Logtalk now prints a warning when redefining parametric objects.
 | |
| 
 | |
| 	Removed need of an abort/0 predicate from the Logtalk debugger example.
 | |
| 	Removed any definition of this predicate from the config files.
 | |
| 
 | |
| 	Added missing definitions for some ISO built-in predicates to the Amzi! 
 | |
| 	Prolog 6.2.2 config file.
 | |
| 
 | |
| 
 | |
| 2.12.0 - May 25, 2002
 | |
| 
 | |
| 	New read-only Logtalk flag "version". Corrected exception term generated 
 | |
| 	when trying to modify a read-only flag using the set_logtalk_flag/2 
 | |
| 	built-in predicate.
 | |
| 
 | |
| 	Updated config file for OpenProlog 1.1b5.
 | |
| 
 | |
| 	New config file for ECLiPSe 5.4.
 | |
| 
 | |
| 	Renamed config files for CIAO 1.7 (beta of 1.8) to "ciao_aux18.config" 
 | |
| 	and "ciao18.config".
 | |
| 
 | |
| 	Updated config file for Amzi! Prolog 6.2.2.
 | |
| 
 | |
| 	New example of using some of the built-in database handling methods 
 | |
| 	(dynpred).
 | |
| 
 | |
| 	Syntax configuration files for jEdit 4.0, VIM 6.1, NEdit 5.2, and 
 | |
| 	TextPad 4.5 text editors providing syntax highlighting for editing 
 | |
| 	Logtalk source files.
 | |
| 
 | |
| 
 | |
| 2.11.0 - April 22, 2002
 | |
| 
 | |
| 	Added a "smart compilation" feature to the Logtalk compiler, controlled 
 | |
| 	by a "smart_compilation" flag. Only available in Prolog compilers that 
 | |
| 	provide access to file modification dates.
 | |
| 
 | |
| 	Added a "startup_message" flag to control printing of the Logtalk banner 
 | |
| 	at startup.
 | |
| 
 | |
| 	Reworked Logtalk pre-processor compilation and loading reports. Compiler 
 | |
| 	option "report" now togles between normal reporting (as specified by the 
 | |
| 	other flags) and silent compilation/loading of source files.
 | |
| 
 | |
| 
 | |
| 2.10.0 - April 5, 2002
 | |
| 
 | |
| 	Scope of object asserted predicates for which there is no declaration is 
 | |
| 	now a function of the context instead of always being declared public. 
 | |
| 	Asserting in this, the predicate is declared private, asserting in self, 
 | |
| 	the predicate is declared protected, otherwise the predicate is declared 
 | |
| 	public.
 | |
| 
 | |
| 	Throw an error if a category contains clauses for dynamic predicates.
 | |
| 
 | |
| 	Updated documentation on categories and built-in methods for database 
 | |
| 	handling.
 | |
| 
 | |
| 	Retracting all clauses for a dynamic predicate from an object now allows 
 | |
| 	an inherited definition to be called when sending the corresponding 
 | |
| 	message. In previous versions the message just failed.
 | |
| 
 | |
| 	Added missing entries for the built-in predicates current_logtalk_flag/2 
 | |
| 	and set_logtalk_flag/2 to the Logtalk compiler built-in predicates table.
 | |
| 
 | |
| 	Updated config file for Amzi! Prolog 6.1.74.
 | |
| 
 | |
| 	Updated notes on patching XSB to work with Logtalk.
 | |
| 
 | |
| 
 | |
| 2.9.3 - February 9, 2002
 | |
| 
 | |
| 	New current_logtalk_flag/2 and set_logtalk_flag/2 built-in predicates.
 | |
| 
 | |
| 	Updated documentation on new built-in predicates.
 | |
| 
 | |
| 	Renamed SWI-Prolog config file swi330.config to swi.config.
 | |
| 
 | |
| 	Renamed config file predicate lgt_default_compiler_option/2 to lgt_flag/2.
 | |
| 
 | |
| 	New XSL stylesheets and shell scripts to convert Logtalk XML entity 
 | |
| 	documenting files to PDF format using XSL Formating Objects.
 | |
| 
 | |
| 
 | |
| 2.9.2 - January 4, 2002
 | |
| 
 | |
| 	The Logtalk compiler can now print a warning when compiling source files 
 | |
| 	that use non-ISO defined built-in predicates using a new portability/1 
 | |
| 	compiler option. Updated the relevant sections of the user manual and the 
 | |
| 	errors example.
 | |
| 
 | |
| 	Corrected a compiler bug where the entity relation tables only recorded 
 | |
| 	the last entry per entity relation type.
 | |
| 	
 | |
| 	Updated config file for CIAO 1.7#162.
 | |
| 
 | |
| 
 | |
| 2.9.1 - December 5, 2001
 | |
| 
 | |
| 	Logtalk compiler now prints a warning when redefining or replacing an
 | |
| 	existing entity.
 | |
| 
 | |
| 	Corrected a compiler bug in the error checking code for the info/1 
 | |
| 	and info/2 directives.
 | |
| 
 | |
| 	Changed the order of object loading in the "mi" example to avoid 
 | |
| 	suporious warning messages.
 | |
| 	
 | |
| 	Added a new problem ("bridge") to the "searching" example. Improved 
 | |
| 	"performance" monitor to give correct reports on alternative solutions. 
 | |
| 	Corrected a bug in the "water jug" state space example.
 | |
| 
 | |
| 
 | |
| 2.9.0 - October 22, 2001
 | |
| 
 | |
| 	Added config files for CIAO Prolog 1.7p115 and B-Prolog 6.0.
 | |
| 
 | |
| 	Compiling and loading an entity that contains references to unknown 
 | |
| 	entities (by default) prints a warning. Updated user and reference 
 | |
| 	manuals.
 | |
| 
 | |
| 	Rewrited all the compiler warning/error code and output messages.
 | |
| 
 | |
| 	Changed compiled code functors postfixes from "_sdcl" and "_sdef" to 
 | |
| 	"_idcl"	and "_idef" (implies recompilation of all objects, protocols, 
 | |
| 	and categories).
 | |
| 
 | |
| 	Changed all occurrences and references to the term "entity_scope" to 
 | |
| 	"scope".
 | |
| 
 | |
| 	Removed some redundant productions from the Logtalk grammar.
 | |
| 
 | |
| 	Updated documentation on the xml directory. Renamed some of the .xsl 
 | |
| 	files. Added sample scripts to batch convert .xml files to .html files.
 | |
| 	
 | |
| 	Added a new loader utility file, all.loader, to load all library files 
 | |
| 	loaded by the other loader files.
 | |
| 
 | |
| 	Started work on documenting the Logtalk pre-processor/compiler source 
 | |
| 	file.
 | |
| 
 | |
| 	New "errors" example. Updated the "inheritance" example.
 | |
| 
 | |
| 
 | |
| 2.8.4 - March 9, 2001
 | |
| 
 | |
| 	Updated config files for BinProlog 8.0, K-Prolog 5.01, XSB 2.3, and
 | |
| 	Amzi! Prolog 4.103~5.0.
 | |
| 	
 | |
| 	New config file for Amzi! Prolog 6.1 beta.
 | |
| 
 | |
| 	Corrected an incomplete entity definition in the Logtalk XML DTD.
 | |
| 	Rewrite the Logtalk XSLT files for improved compatibility with XSLT 
 | |
| 	processors regarding handling of whitespace.
 | |
| 
 | |
| 	A first cut of a XML Schema for the Logtalk XML documentation files
 | |
| 	(file xml/logtalk.xsd).
 | |
| 
 | |
| 	Small improvements to the documentation.
 | |
| 
 | |
| 
 | |
| 2.8.3 - November 21, 2000
 | |
| 
 | |
| 	Corrected a bug where sending a message for a built-in method to an 
 | |
| 	unknown object fails instead of generating the expected exception.
 | |
| 
 | |
| 	Put some ocorrences of atoms public, mode, and type between ()'s to 
 | |
| 	avoid compilation errors in BinProlog 8.0 and other Prolog compilers 
 | |
| 	that declare these atoms as operators.
 | |
| 
 | |
| 	Corrected the definition of the state space of the "Missionaires and 
 | |
| 	Cannibals" problem in the "searching" example that resulted in some 
 | |
| 	wrong solutions.
 | |
| 
 | |
| 
 | |
| 2.8.2 - November 5, 2000
 | |
| 
 | |
| 	New .xsl file to convert .xml files to TeXML files.
 | |
| 
 | |
| 	Fixed a problem with explicit compilation options being correctly parsed 
 | |
| 	but not processed.
 | |
| 
 | |
| 	Corrected a bug regarding default init options definition for the 
 | |
| 	points, polygons, and bricks examples. Updated category initialization 
 | |
| 	in roots example.
 | |
| 
 | |
| 
 | |
| 2.8.1 - October 28, 2000
 | |
| 
 | |
| 	New config file for K-Prolog 5.0.
 | |
| 
 | |
| 	Improved compiler error detection and reporting of invalid directives 
 | |
| 	and clauses.
 | |
| 	
 | |
| 	Corrected a problem with some Prolog compilers where compiling a file 
 | |
| 	containing syntax errors may not close the file after the errors are 
 | |
| 	reported.
 | |
| 
 | |
| 	Many small improvements to all documentation.
 | |
| 	
 | |
| 	Small improvements to the .xsl files and to the output of .xml files.
 | |
| 
 | |
| 
 | |
| 2.8.0 - October 1, 2000
 | |
| 
 | |
| 	I have found just a few days ago that I have uploaded to the Logtalk web 
 | |
| 	server a development version of Logtalk 2.7.0 instead of the final one!
 | |
| 	To avoid confusions I decided to release a new version.
 | |
| 
 | |
| 	Changed implementation of the logtalk_compile/1-2 and logtalk_load/1-2 
 | |
| 	predicates to only accept a list of entities instead of either an entity 
 | |
| 	or a list of entities, simplifying and improving the performance of these 
 | |
| 	predicates. Improved error reporting for the logtalk_compile/1 and 
 | |
| 	logtalk_load/1 predicates. Updated relevant sessions in the user and 
 | |
| 	reference manuals.
 | |
| 
 | |
| 	Simplified the implementation of the following predicates, by sharing 
 | |
| 	the error checking code with the corresponding extended versions: 
 | |
| 	implements_protocol/2, imports_category/2, instantiates_class/2, 
 | |
| 	specializes_class/2, extends_protocol/2, and extends_object/2.
 | |
| 
 | |
| 	Completed some missing library file dependencies documentation in some 
 | |
| 	examples.
 | |
| 
 | |
| 	New version of the QUICK_START help file. Updated tutorial.
 | |
| 
 | |
| 
 | |
| 2.7.0 - August 24, 2000
 | |
| 
 | |
| 	First release of the Logtalk standard library of objects, protocols and 
 | |
| 	categories.
 | |
| 
 | |
| 	Rewritten all examples to use the new Logtalk standard library.
 | |
| 
 | |
| 	New logtalk_load/2 and logtalk_compile/2 Logtalk built-in predicates,
 | |
| 	accepting a list of compiler options. See the User and Reference Manuals 
 | |
| 	for details.
 | |
| 
 | |
| 	New XSLT file for viewing .xml files in Microsoft Internet Explorer 5.5 
 | |
| 	for Windows after installing the latest Microsoft XML Parser Preview 
 | |
| 	Release. Small improvements in all XSLT files.
 | |
| 
 | |
| 	Starting with this version all config files need to provide a definition 
 | |
| 	for the compare/3 predicate if it is not built-in in the corresponding 
 | |
| 	Prolog compiler. Also, default Logtalk compiler options are now also set 
 | |
| 	in the config files using the lgt_default_compiler_option/2 predicate.
 | |
| 
 | |
| 	Updated config file for CIAO 1.6p1. See the configs/NOTES file for 
 | |
| 	details.
 | |
| 
 | |
| 
 | |
| 2.6.2 - July 4, 2000
 | |
| 
 | |
| 	Improved performance and error checking for the built-in predicates 
 | |
| 	create_object/4, create_protocol/3 and create_category/4.
 | |
| 
 | |
| 	Updated config file for BinProlog 7.83.
 | |
| 
 | |
| 	Many small updates to all documentation.
 | |
| 
 | |
| 	New PDF versions of the documentation formated for printing (with page 
 | |
| 	numbers, table of contents and index)are now available in both A4 and 
 | |
| 	US letter formats.
 | |
| 
 | |
| 
 | |
| 2.6.1 - May 5, 2000
 | |
| 
 | |
| 	Modified the structure of the automatically generated XML documenting 
 | |
| 	files to improve XSL translation performance. Added a new, more standard 
 | |
| 	compliant, XSL file to generate HTML files and renamed the old one to 
 | |
| 	ie5.xsl. See the xml/NOTES file for details. Corrected an error in the 
 | |
| 	logtalk.css CSS file.   
 | |
| 
 | |
| 	Modified the definitions of predicates lgt_file_extension/2 and 
 | |
| 	lgt_file_name/2 in all config files.
 | |
| 
 | |
| 	Updated all the user manual sessions related to automatic documentation.
 | |
| 
 | |
| 	Updated all HTML documentation for future XHTML 1.0 conformance.
 | |
| 
 | |
| 	Start adding documenting directives to most examples.
 | |
| 
 | |
| 
 | |
| 2.6.0 - April 27, 2000
 | |
| 
 | |
| 	Added support for documentation of objects, protocols, and categories, 
 | |
| 	using automatic generation of XML files.
 | |
| 
 | |
| 	Added info/1 and info/2 directives for documenting objects, protocols,
 | |
| 	categories, and predicates. Added definition of documentation file name
 | |
| 	extension and default file names for the DTD and XSL files to the config 
 | |
| 	files.
 | |
| 
 | |
| 	Improved error checking for the built-in predicates create_object/4,
 | |
| 	create_protocol/3 and create_category/4 to also detect invalid entity 
 | |
| 	identifiers.
 | |
| 
 | |
| 	Updated the user and reference manuals to describe the new automatic 
 | |
| 	documenting features.
 | |
| 
 | |
| 	Updated all HTML documentation to conform to HTML 4.01 strict standard.
 | |
| 
 | |
| 	Corrected some wrong cross-reference links and titles in the reference 
 | |
| 	and user manuals HTML pages.
 | |
| 
 | |
| 	PDF versions of the manuals and tutorial are now available in both A4 
 | |
| 	and US letter formats.
 | |
| 
 | |
| 	Corrected two errors in the searching example, one in the definition of 
 | |
| 	the farmer problem state space and the other when backtracking over
 | |
| 	performance reports.
 | |
| 
 | |
| 
 | |
| 2.5.2 - March 7, 2000
 | |
| 
 | |
| 	Updated manuals to clarify some limitations of declaring and defining
 | |
| 	dynamic predicates inside categories and documented a way of using the 
 | |
| 	built-in local method this/1 to access object parameters.
 | |
| 
 | |
| 	Removed references to parametric categories from the Logtalk 
 | |
| 	documentation (at runtime we can only access object parameters, 
 | |
| 	not category parameters).
 | |
| 
 | |
| 	Corrected two wrong declarations of built-in methods (forall/2 and
 | |
| 	retractall/1) in the Logtalk pre-processor.
 | |
| 
 | |
| 	Corrected bug where predicates declared in dynamic entities may have
 | |
| 	a "static" instead of a "dynamic" property.
 | |
| 
 | |
| 	Corrected a bug in category compilation that prevented a dynamic category
 | |
| 	from being abolished. Speedup predicate definition lookups for categories.
 | |
| 
 | |
| 
 | |
| 2.5.1 - February 18, 2000
 | |
| 
 | |
| 	Two new examples: birds, a bird identification expert system adopted 
 | |
| 	(with permission) from an Amzi example, and viewpoints, a set of 
 | |
| 	prototypes showing how to do property sharing and value sharing in 
 | |
| 	Logtalk.
 | |
| 
 | |
| 	Renamed config file yap421.config to yap430.config to match the name of 
 | |
| 	the new YAP 4.3.0 public release (named 4.2.1 while on beta testing).
 | |
| 
 | |
| 	Partial config file for Trinc Prolog R3.
 | |
| 
 | |
| 
 | |
| 2.5.0 - December 29, 1999
 | |
| 
 | |
| 	The Logtalk pre-processor now accepts arbitrary clauses and directives
 | |
| 	to appear in a file before an opening entity directive. The clauses and
 | |
| 	directives are added unchanged to the compiled file.
 | |
| 
 | |
| 	Improved performance for all kinds of message sending.
 | |
| 
 | |
| 	Two new examples: reflection, showing how to implement a simple 
 | |
| 	class-based reflective system, and symdiff, showing how to use 
 | |
| 	parametric objects to implement symbolic expression differentiation 
 | |
| 	and simplification.
 | |
| 
 | |
| 	Updated config file for the beta 8 release of SWI-Prolog 3.3.0.
 | |
| 
 | |
| 
 | |
| 2.4.0 - December 1, 1999
 | |
| 
 | |
| 	Logtalk is now an Open Source project, available under Perl's Artistic 
 | |
| 	license.
 | |
| 
 | |
| 	Two new examples: instmethods, ilustrating the use of instance defined 
 | |
| 	methods, and classvars, showing how to implement class variables.
 | |
| 
 | |
| 	Updated Logtalk grammar to explicitly allow for user-defined types
 | |
| 	in mode/2 directives.
 | |
| 
 | |
| 	New config files for SWI-Prolog 3.3.0, SICStus Prolog 3.8 and CIAO 
 | |
| 	Prolog 1.4p0 (incomplete).
 | |
| 
 | |
| 	Updated config file for B-Prolog 4.0.
 | |
| 
 | |
| 	Updated config file for GNU Prolog to use the new call_with_args() 
 | |
| 	built-in predicate added in version 1.1.0.
 | |
| 
 | |
| 	Updated config file for YAP Prolog to use the new call_with_args() 
 | |
| 	built-in predicate added in version 4.2.1.
 | |
| 
 | |
| 
 | |
| 2.3.1 - September 22, 1999
 | |
| 
 | |
| 	Logtalk pre-processor updated to only report one warning per redefined
 | |
| 	Logtalk or Prolog built-in predicate.
 | |
| 
 | |
| 	Changed some occurrences of atom "public" to "(public)" in 
 | |
| 	compiler/logtalk.pl file to avoid syntax errors in Prolog compilers 
 | |
| 	(like BinProlog) that define "public" as an operator. Also put some 
 | |
| 	terms between ()'s to avoid syntax errors with ALS Prolog 3.1
 | |
| 
 | |
| 	Update config file for ALS Prolog to work with version 3.1.
 | |
| 
 | |
| 	Updated configs/NOTES file include a workaround to use Logtalk with
 | |
| 	XSB 2.0, some guidelines on how to write loader utility files for
 | |
| 	BinProlog 7.50, and a bug in ALS Prolog 3.1 that affects Logtalk.
 | |
| 
 | |
| 
 | |
| 2.3.0 - September 12, 1999
 | |
| 
 | |
| 	Metapredicate information is now stored with the other predicate 
 | |
| 	properties, instead of being discarded after compiling the clauses of
 | |
| 	a metapredicate. Added predicate property metapredicate/1. It is now 
 | |
| 	possible to assert clauses for dynamic metapredicates. 
 | |
| 
 | |
| 	Corrected a bug in the processing of metacalls in pseudo-object user. 
 | |
| 
 | |
| 	Corrected a bug in the implementation of private inheritance.
 | |
| 	Improved performance of protected inheritance.
 | |
| 
 | |
| 	Corrected failure of processing initialization/1 and op/3 directives in 
 | |
| 	create_object/4, create_category/4 and create_protocol/3 built-in 
 | |
| 	predicates.
 | |
| 
 | |
| 	Corrected a bug when calling private static category predicates from 
 | |
| 	importing objects. Simplified code generated for categories.
 | |
| 
 | |
| 	Rewrite code for the built-in method current_predicate/1 to avoid 
 | |
| 	duplicated or wrong results when overriding predicate declarations 
 | |
| 	and to ensure that all possible argument type errors are detected.
 | |
| 
 | |
| 	Changed compilation of classes that do not instantiate any (meta)class
 | |
| 	in order to throw the correct exception when a message is sent to them.
 | |
| 
 | |
| 	Changed compilation of root objects (that do not instantiate, specialize 
 | |
| 	or extend other objects) so that calls to "super" (^^/1) fail (as they 
 | |
| 	should) instead of generating a "predicate does not exist" error message.
 | |
| 
 | |
| 	Changed implementation of "super" calls (^^/1) to avoid a potential 
 | |
| 	endless loop problem when using these calls from the inheritance root 
 | |
| 	object of a reflexive class-based systems.
 | |
| 
 | |
| 	Pre-processor now checks for callable and object identifier errors.
 | |
| 	Runtime now checks for non-instantiated messages.
 | |
| 
 | |
| 	Added new example (inheritance) about public, protected and private 
 | |
| 	inheritance.
 | |
| 
 | |
| 	Updated metapredicates, lo, kernel, and types examples. Most of the 
 | |
| 	code in the last two examples is being updated to form the basis of an 
 | |
| 	upcoming Logtalk standard library.
 | |
| 
 | |
| 	Small changes in the pre-processor/runtime code for compatibility with
 | |
| 	ECLiPSe 4.2.2. Updated config files for this Prolog compiler.
 | |
| 
 | |
| 	Rewrite some predicates in the config files for SWI-Prolog and LPA 
 | |
| 	Mac & WIN Prologs for improved performance.
 | |
| 
 | |
| 	New tutorial session about events and monitors.
 | |
| 
 | |
| 	Updated documentation to match the changes made in this version.
 | |
| 
 | |
| 
 | |
| 2.2.0 - July 10, 1999
 | |
| 
 | |
| 	Implemented public, protected and private object inheritance, protocol
 | |
| 	implementation and category importation.
 | |
| 	
 | |
| 	New Logtalk built-in predicates instantiates_class/3, extends_object/3,
 | |
| 	extends_protocol/3, specializes_class/3, imports_category/3 and
 | |
| 	implements_protocol/3. The third argument returns the relation scope.
 | |
| 
 | |
| 	Pre-processor now checks most directive errors.
 | |
| 
 | |
| 	Changed ^^/1 (super call) implementation to only allow the use of a 
 | |
| 	single predicate call for argument and to retain the original sender
 | |
| 	of the message (see the updated sicstus example).
 | |
| 
 | |
| 	Fixed bug that prevented directives with a variable number of arguments
 | |
| 	(like dynamic(), public(), uses(), ...) being recognized.
 | |
| 
 | |
| 	Changed definition of predicate read_term/3 in the configs files of Amzi!,
 | |
| 	Aquarius, Arity, Eclipse, IC, K, LPA Mac&WIN, Master and XSB to always
 | |
| 	instantiates the singleton variables list to the empty list. Needed to
 | |
| 	prevent backtracking problems in logtalk_load/1 and logtalk_compile/1
 | |
| 	predicates.
 | |
| 
 | |
| 	Removed choice-point in processing metacalls in predicate definitions.
 | |
| 
 | |
| 	A banner with the Logtalk version is printed after loading the runtime/
 | |
| 	pre-processor.
 | |
| 
 | |
| 	Removed variables example. The category attributes is now part of the
 | |
| 	kernel example. Corrected some warmless syntax errors in directives in
 | |
| 	kernel/attributes.lgt, kernel/monitor.lgt and miscellaneous/queens.lgt.
 | |
| 
 | |
| 	Changed name of blocks example to bricks and object "block" to "brick" 
 | |
| 	in order to avoid problems with some Prolog compilers that use the atom 
 | |
| 	"block" for operators or built-in predicates.
 | |
| 
 | |
| 
 | |
| 2.1.0 - May 11, 1999
 | |
| 
 | |
| 	Fixed some bugs in the definition of the pseudo-object user when sending 
 | |
| 	the message predicate_property/2.
 | |
| 
 | |
| 	Renamed config file for Calypso to GNU Prolog.
 | |
| 
 | |
| 	New config file for LPA WinProlog 4.0.
 | |
| 
 | |
| 	Corrected the omission in the documentation of the Logtalk grammar of the 
 | |
| 	built_in entity property.
 | |
| 
 | |
| 	New tutorial pages about building reflective class-based systems.
 | |
| 
 | |
| 	Modified pre-processor to compile throw/1 as a control structure to 
 | |
| 	ensure compatibility with the GNU-Prolog compiler.
 | |
| 
 | |
| 	Modified pre-processor to ensure compatibility with Prolog compilers that
 | |
| 	use immediate update semantics instead of the ISO logical database update.
 | |
| 
 | |
| 	Improved simplification of compiled object and category clauses.
 | |
| 
 | |
| 	Rewrite and clean up pre-processor code for better compiler performance.
 | |
| 
 | |
| 	Several updates to the examples files.
 | |
| 
 | |
| 	Changed all example loader files to wrap the call to logtalk_load/1 inside
 | |
| 	an initialization/1 directive for ISO standard compliance.
 | |
| 
 | |
| 
 | |
| 2.0 GM - February 9, 1999
 | |
| 
 | |
| 	Removed some redundant choice-points that are being created when 
 | |
| 	compiling Logtalk entities.
 | |
| 
 | |
| 	Small compilation speed optimizations.
 | |
| 
 | |
| 	Logtalk compiled files now contain the declarations for the message 
 | |
| 	sending operators to ensure compatibility with some Prolog compilers.
 | |
| 
 | |
| 	Changed the way Logtalk pre-processor writes directives to ensure 
 | |
| 	compatibility with some Prolog compilers. Corrected a bug in the
 | |
| 	processing of the op/3 directive.
 | |
| 
 | |
| 	Updated PrologII+ config file for version 4.5.
 | |
| 
 | |
| 	Changed the definitions of catch/3 and throw/1 in the config files for 
 | |
| 	LPA Prolog compilers.
 | |
| 
 | |
| 	New config file for MasterProlog 4.1; removed config file for the 
 | |
| 	old BIM Prolog 4.0.
 | |
| 
 | |
| 	Corrected an error in the config file for OpenProlog in the definiton
 | |
| 	of the write_term/3 predicate.
 | |
| 
 | |
| 	Added a safer definition for write_term/3 predicate in the config  
 | |
| 	files for Amzi, Aquarius, Arity, Eclipse, IC, K, LPA Mac, LPA Win, 
 | |
| 	and XSB Prolog compilers.
 | |
| 
 | |
| 	Added a QUICK_START file.
 | |
| 
 | |
| 
 | |
| 2.0 Beta 3 - February 1, 1999
 | |
| 
 | |
| 	Closed some encapsulation holes in the implementation of super calls.
 | |
| 
 | |
| 	Changed Logtalk pre-processor to use write_term/3 instead of write/2 and 
 | |
| 	writeq/2 to workaround some compatibility problems with some Prolog 
 | |
| 	compilers.
 | |
| 
 | |
| 	Changed mode operators priority and type to be compatible with the ISO
 | |
| 	standard.
 | |
| 
 | |
| 	Modified definition of predicate read_term/3 in the config file for Amzi 
 | |
| 	compiler to return the atom end_of_file instead of '!EOF' at the end of
 | |
| 	a file (this prevented Logtalk to complete compilation any file under 
 | |
| 	this compiler). Improved detection of built-in predicates while compiling.
 | |
| 
 | |
| 	Removed config file for wamcc. This compiler have been replaced by 
 | |
| 	Calypso (developed by the same author).
 | |
| 
 | |
| 	Updated K-Prolog config file for version 4.50.
 | |
| 
 | |
| 	Improved documentation of template config file.
 | |
| 
 | |
| 	Added SCRIPT files to the kernel and types examples.
 | |
| 
 | |
| 	Updated Tutorial and User and Reference Manuals.
 | |
| 
 | |
| 	New end user license.
 | |
| 
 | |
| 
 | |
| 2.0 Beta 2 - November 16, 1998
 | |
| 
 | |
| 	Built-ins logtalk_compile/1 and logtalk_load/1 updated to match 
 | |
| 	the documentation regarding thrown errors and to accept a list of
 | |
| 	entities to compile/load.
 | |
| 
 | |
| 	Modified the examples loader utility files to make only a call to
 | |
| 	logtalk_load/1 by using a list of entities. This should make it easy to
 | |
| 	modify these files for compilers that don't support arbritrary queries
 | |
| 	in a file. 
 | |
| 
 | |
| 	Logtalk runtime no longer tries to catch some of the errors thrown 
 | |
| 	by ::/2.
 | |
| 
 | |
| 	Added to all config files a Logtalk predicate to check if a file 
 | |
| 	exists in the current working directory (used by the logtalk_load/1
 | |
| 	and logtalk_compile/1 Logtalk built-in predicates).
 | |
| 
 | |
| 	New configs files for the K-Prolog 4.14 and Calypso 1.0b6 Prolog 
 | |
| 	compilers.
 | |
| 
 | |
| 	Completed the config file for Open Prolog 1.03d38 (with the exception
 | |
| 	of lgt_current_date/3 that still have a dummy definition).
 | |
| 
 | |
| 	Added a missing definition for Logtalk predicate forall/2 to the config
 | |
| 	file for Prolog II+ 4.4.
 | |
| 
 | |
| 	Modified Logtalk pre-processor/runtime to avoid syntax errors when
 | |
| 	running on Open Prolog or Calypso and to remove some redundant
 | |
| 	choice-points that are being created when compiling categories and
 | |
| 	protocols.
 | |
| 
 | |
| 	Modified some examples that use operators to avoid syntax errors in
 | |
| 	some Prolog compilers.
 | |
| 
 | |
| 	Modified the implementation of the built-in method 
 | |
| 	predicate_property/2 to avoid duplicate answers and to throw an
 | |
| 	instantiation error if the first argument is not bound.
 | |
| 
 | |
| 	Modified definition of the pseudo-object user to hide Logtalk pre-
 | |
| 	processor predicates from the current_predicate/1 built-in method and
 | |
| 	to ensure that the predicate_property/2 built-in method returns
 | |
| 	Logtalk defined predicate properties for built-in Logtalk and Prolog
 | |
| 	predicates.
 | |
| 
 | |
| 	Modified Prolog code generated by the pre-processor to further minimize
 | |
| 	possible conflicts with user defined predicates.
 | |
| 
 | |
| 	Added a lgt_predicate_property/2 predicate to the config files to
 | |
| 	improve Logtalk portability.
 | |
| 
 | |
| 	Updated Tutorial and User and Reference Manuals.
 | |
| 
 | |
| 
 | |
| 2.0 Beta 1 - October 18, 1998
 | |
| 
 | |
| 	Added basic support for implementation multi-inheritance.
 | |
| 
 | |
| 	Logtalk pre-processor updated to try to detect misspelt local 
 | |
| 	predicate calls.
 | |
| 
 | |
| 	First public beta.
 | |
| 
 | |
| 
 | |
| 2.0 Alpha 1 - July, 1998
 | |
| 
 | |
| 	First release for registered users.
 |