Logtalk

Sponsored Links:
Software Screenshot:
Logtalk
Software Details:
Version: 3.10.3 updated
Upload Date: 31 Mar 17
Developer: Logtalk
Distribution Type: Freeware
Downloads: 6
Size: 4022 Kb

Rating: 4.0/5 (Total Votes: 4)

Sponsored Links:

Logtalk is an object-oriented logic programming language that can use most Prolog implementations as a back-end compiler. As a multi-paradigm language, Logtalk includes support for both prototypes and classes, protocols (interfaces), component-based programming through category-based composition, event-driven programming, and high-level multi-threading programming.

What is new in this release:

* IMPROVED: Simplified code generated for multifile predicates.
* FIXED: Regression in previous release in the compilation of multifile predicate clauses that make calls to the `::/1-2` control constructs.

What is new in version 3.09.1:

* ADDED: Support for `number_of_rules/1` and `number_of_user_rules/1` object and category properties.
* ADDED: Support for `number_of_rules/1` predicate property.
* ADDED: Detection of `meta_predicate/1` directives that wrongly specify a goal meta-argument that is actually a closure passed to `call/2-N` meta-predicate calls. Thanks to Arun Majumdar for the report.
* ADDED: Detection of missing predicate scope directives in the presence of `mode/2` directives.

What is new in version 3.09.0:

* CHANGED: Settings files are now also looked up in the user home directory when not found in the startup directory or in the Logtalk user directory. Setting the `settings_file` flag to `restrict` now restricts searching for a settings file to the Logtalk user directory and the user home directory. This changes are useful when a team shares a Logtalk installation with both the `LOGTALKHOME` and `LOGTALKUSER` environment variables pointing to the same directory. Thanks to Barry Evans for the suggestion.

What is new in version 3.08.0:

* CHANGED: Ensure that in compiler error and warning messages the file and line information is always the last line for the reported issue.

What is new in version 3.07.0:

* ADDED: A `unicode` read-only flag to describe the backend Prolog compiler support for the Unicode standard.
* ADDED: Support for `++` (ground) and `--` (unbound) argument instantiation modes (declared as prefix operators) for use with the `mode/2` predicate directive.
* ADDED: Support for `one_or_error` determinism specification in `mode/2` predicate directives. Useful for documenting type-checking predicates.
* IMPROVED: Detect attempts to call existentially quantified goals outside the scope of `bagof/3` and `setof/3` calls.
* FIXED: When compiling `uses/2` directives, don't create a linking clause for runtime use for built-in predicates in `user` when no alias is being defined.
* FIXED: When propagating a compilation failure for a file to its parent files, ensure that the file ancestors will be reloaded starting with the top ancestor by the make mechanism.
* FIXED: Avoid redundant file reloads when calling `logtalk_make/0` or `logtalk_make/1` with the target `all`.
* FIXED: Detection of missing predicates in `^^/1` calls when calling `logtalk_make/1` with the target `missing`.
* FIXED: Bug in the reflection API where some predicate cross-referencing information were not recorded. Thanks to Edward Schwartz for the bug report.

What is new in version 3.06.2:

This release continues the work on improving the developer tools under the sponsorship of Kyndi, Inc. It includes a new version of the wrapper tool for porting plain Prolog applications and improvements and fixes for the lgtunit and diagrams tools. It also includes new unit tests, compiler and documentation fixes, and a compatibility update for Lean Prolog.

What is new in version 3.04.1:

* FIXED: Compiler bug where a predicate that is term-expanded by calling the `compile_aux_clauses/1` method could be misreported as discontiguous.
* FIXED: Calls to the `threaded_notify/1` built-in predicate from within the `user` pseudo-object must not require a bound argument as per documentation.
* FIXED: Calls to the `object_property/2` and category_property/2` built-in predicates with `number_of_clauses/1` or `number_of_user_clauses/1` property arguments to be deterministic.

What is new in version 3.03.0:

* ADDED: Support for a new `logtalk_make/1` target, `missing`, to list missing entities and predicates. Also available using the `{?}` shortcut.
* ADDED: Support for a new `logtalk_make/1` target, `circular`, to list circular references (considering message sending goals) between pairs and trios of objects. Also available using the `{@}` shortcut.
* IMPROVED: Append a directory hash to the intermediate Prolog file names to help avoiding file name collisions when collecting all the intermediate files in the same directory for embedding. Currently requires ECLiPSe, GNU Prolog, JIProlog, Quintus Prolog, SICStus Prolog, SWI-Prolog, XSB, or YAP as the backend compiler.
* FIXED: Meta-predicate call optimization bug when a meta-argument is either a pre-compiled closure or a closure for a goal called in the context of the `user` pseudo-object. Also apply more strict error checking to closure meta-arguments.
* FIXED: Pretty-printing of parametric object and parametric category identifiers in error and warning messages.

What is new in version 3.02.2:

* FIXED: Error checking bug in lambda expressions using `true/0` as the lambda goal. Thanks to Boris Vassilev for the bug report.
* FIXED: The `logtalk_make/1` predicate would succeed (after printing a warning message) when called with a non-instantiated or an invalid argument instead of failing. to the generated intermediate Prolog files using a multifile predicate for a better embedding experience. Notably, it makes it easier to do incremental embedding.
* IMPROVED: The make predicates now also reload the parent files of files with compilation or loading errors. This ensures that, when a faulty file aborts the compilation of all files in a loader file, the files listed after the faulty file will be compiled when the faulty file is fixed and the make predicates are called.

What is new in version 3.02.1:

* IMPROVED: The runtime table entries for loaded files are now added to the generated intermediate Prolog files using a multifile predicate for a better embedding experience. Notably, it makes it easier to do incremental embedding.
* IMPROVED: The make predicates now also reload the parent files of files with compilation or loading errors. This ensures that, when a faulty file aborts the compilation of all files in a loader file, the files listed after the faulty file will be compiled when the faulty file is fixed and the make predicates are called.

What is new in version 3.01.2:

This release completes the static binding implementation; adds support for using file names as-is with the compiling and loading predicates; fixes compiler bugs; features documentation updates; improves the debugging, testing, and documenting tools; adds a new set of unit tests for checking Prolog conformance with official and de facto standards; updates syntax coloring for all supported text editors and syntax highlighters; and includes compatibility updates for ECLiPSe, JIProlog, and YAP.

Requirements:

Compatible Prolog compiler.

Similar Software

JCDatabase
JCDatabase

4 Jan 15

Sequel Pro
Sequel Pro

17 Apr 16

Fix Up 4D
Fix Up 4D

4 Jan 15

Other Software of Developer Logtalk

Logtalk
Logtalk

3 May 15

Comments to Logtalk

Comments not found
Add Comment
Turn on images!