We stand with Ukraine to help keep people safe. Join us
Logtalk free download for Mac

Logtalk

Version 3.67.0

Object-oriented logic programming language.

5.0
Based on 1 user rateRead reviews & comments
Free
Absolutely Free

Logtalk overview

Logtalk is an Open-Source, object-oriented logic programming language that extends and leverages the Prolog language with a feature set suitable for programming in-the-large.

Logtalk supports modern code encapsulation and code reuse mechanisms without compromising the declarative programming features of Prolog. Logtalk is implemented in highly portable code and can use most modern and standards compliant Prolog implementations as a back-end compiler. The Logtalk distribution features portable libraries and portable assertions, documenting, diagraming, and unit testing tools, plus extensive code editing and publishing support. It also includes extensive documentation and a large number of programming examples.

What’s new in version 3.67.0

Updated on Jul 11 2023

Logtalk compiler and runtime
  • Added: Two new linter flags, grammar_rules and arithmetic_expressions, to enable/disable the corresponding warnings.
  • Improved: Abstract how the linter and make tools check if a module defines a predicate. While this fixes some issues with some backends (e.g. ECLiPSe), most systems don't provide a reliable and clean solution for performing these checks.
  • Updated: The compiler to also handle the lsb/1 and msb/1 integer functions when lint checking (is)/2 goals.
  • Fixed: Linter check false positives for predicates called as non-terminals when the non-terminal is declared as dynamic.
Prolog adapter and integration files
  • Updated: The Trealla Prolog adapter file to require version 2.18.7 or later.
  • Added: macOS .command files for JIProlog and Scryer Prolog.
Documentation
  • Changed: Use SPDX-FileCopyrightText for most files copyright information.
  • Added: Section on writing debugging/logging messages from tests to the lgtunit tool documentation.
  • Updated: Documentation of the dictionaries library.
  • Fixed: Several typos in the Handbook section on Prolog integration and migration.
Library
  • Improved: Simplified some of the dictionaries library test assertions and changed most tests to check for expected determinism.
  • Fixed: The type library object type-checking of Unicode character codes to exclude non-character code points (i.e. reserved, surrogate, or non-assigned). Currently, this check is only accurate for LVM and SWI-Prolog as other backends don't provide support for querying a Unicode code point category.
  • Fixed: The arbitrary library category generation of Unicode character codes to exclude non-character code points (i.e. reserved, surrogate, or non-assigned). Currently, this is only accurate for LVM and SWI-Prolog as other backends don't provide support for querying a Unicode code point category.
  • Fixed: The arbitrary library category generation of Unicode atoms in the BMP to avoid atom normalization (as performed by some backends such as LVM) resulting in atoms with characters outside the BMP.
  • Fixed: The arbitrary library category generation of Unicode atoms of a given length to avoid atom normalization (as performed by some backends such as LVM) resulting in atoms with a different length.
Tools
  • Added: Predicates rlibraries/1-2, libraries/1-2, rdirectories/1-2, directories/1-2, and files/1-2 to the lgtdoc tool.
  • Added: The packs::update/2-3 predicates now accept an install/1 boolean option to install a pack latest version when trying to update a pack that's not installed.
  • Added: The lgtunit tool now detects and reports discrepancies between the number of tests run and the total number of tests defined in a test set. This usually implies bugs in the implementation of basic Prolog control constructs by the used backend system.
  • Added: Support to the logtalk_tester.* scripts for using a GNU Prolog executable that includes Logtalk for better performance. With the help of Daniel Diaz.
  • Updated: The help tool to support other operating-systems, notably BSD, that also provide the xdg-open command.
  • Fixed: A lgtunit tool bug when a test condition goal throws an error that would result in the test being reported twice (both as skipped and failed).
  • Fixed: Tests for the directory_dependency_diagram::rdirectory/2 and directory_load_diagram::rdirectory/2 library predicates.
  • Fixed: The debugger tool messages was still wrongly assuming that LVM didn't provide a way to check if a call is deterministic.
  • Fixed: Prevent the lgtdoc tool rdirectory/1-2 predicates from failing when there are no sub-directories with loaded files.
Examples
  • ReMoved: Now redundant cc example.
  • Updated: The assign_parameters, assumptions, cascade, delegates, inlining, metainterpreters, prototypes, and recipes example tests to use explicit assertions.
Tests
  • Changed: Only run the log/2 arithmetic function tests when the function is implemented by the backend.
  • Changed: Splited the Unicode syntax tests in two sets, one for letter case and variables and one for escape sequences.
  • Moved: Tests for the Logtalk implementation of the de facto Prolog standard conditional compilation directives from the cc example to the tests/logtalk/directives/conditional_compilation directory.
  • Added: Tests for the de facto Prolog standard conditional compilation directives.
  • Added: Additional tests for the Prolog standard call/1 and catch/3 control constructs.
  • Added: Additional tests for the Prolog call/2-N, open/3-4, setup_call_cleanup/3, and write_term/2 predicates.
  • Added: Tests for the evaluable_property/2 built-in predicate under discussion with Prolog system implementers.

Information

License

Free

Size

18.3 MB

Developer’s website

https://logtalk.org/

Downloads

10309

App requirements

  • Intel 64
  • Apple Silicon
  • OS X 10.10 or later
  • Compatible Prolog compiler
Try our new feature and write a detailed review about Logtalk. All reviews will be posted soon.

Write your thoughts in our old-fashioned comment

MacUpdate Comment Policy. We strongly recommend leaving comments, however comments with abusive words, bullying, personal attacks of any type will be moderated.
0.0

(0 Reviews of )

There are no reviews yet
  • Comments

  • User Ratings

Quantumpanda
Quantumpanda
Jan 13 2015
3.00.0
0.0
Jan 13 2015
0.0
Version: 3.00.0
Why doesn't MacUpdate Desktop inform me of updates to LogTalk? MUD ought to be able to recognize the presence of any software the website lists.
Sandro-Bilbeisi
Sandro-Bilbeisi
Aug 4 2015
5.0
Aug 4 2015
5.0
Version: null
Free
Absolutely Free
How would you rate Logtalk?
Similar apps
Python
Object-oriented programming language.
Is this app is similar to Python? Vote to improve the quality of this list.
Vote results
1
Upvotes
1
Total score
0
Downvotes
Processing
Programming language for electronic arts.
Is this app is similar to Processing? Vote to improve the quality of this list.
Vote results
1
Upvotes
1
Total score
0
Downvotes
Agena
Procedural programming language.
Is this app is similar to Agena? Vote to improve the quality of this list.
Vote results
1
Upvotes
1
Total score
0
Downvotes
Racket
Popular variant of the Scheme programming language.
Is this app is similar to Racket? Vote to improve the quality of this list.
Vote results
1
Upvotes
1
Total score
0
Downvotes
Scala
The Scala Programming Language.
Is this app is similar to Scala? Vote to improve the quality of this list.
Vote results
1
Upvotes
1
Total score
0
Downvotes