Aquesta és una versió anterior. La versió actual és la 3.102.0. Logtalk 3.102.0 · Data de publicació:
Fitxers d’instal·lació 3.67.0
| Arquitectura | Tipus | Àmbit | Mida del fitxer | Baixa | SHA256 |
|---|---|---|---|---|---|
| Qualsevol processador | EXE (Inno Setup) | Tots els usuaris | — | logtalk.org | VirusTotal |
L’enllaç i l’SHA256 provenen del manifest comunitari del Gestor de paquets del Windows. Convé comparar el hash del fitxer baixat abans d’executar-lo.
Notes de la versió
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.https://github.com/LogtalkDotOrg/logtalk3/blob/master/RELEASE_NOTES.md#3670---july-4-2023