Logtalk

Anzeigen:
Screenshot der Software:
Logtalk
Softwarebeschreibung:
Version: 3.20 Aktualisiert
Upload-Datum: 26 Oct 18
Entwickler: Logtalk
Lizenz: Frei
Popularität: 11
Größe: 4410 Kb

Rating: 4.0/5 (Total Votes: 4)

Anzeigen:


        Logtalk ist eine objektorientierte logische Programmiersprache, die die meisten Prolog-Implementierungen als Back-End-Compiler verwenden kann. Als Sprache mit mehreren Paradigmen bietet Logtalk Unterstützung für Prototypen und Klassen, Protokolle (Schnittstellen), komponentenbasierte Programmierung durch kategoriebasierte Komposition, ereignisgesteuerte Programmierung und High-level Multi-Threading-Programmierung.
    

Was ist neu in dieser Version:

* VERBESSERT: Vermeide falsche "meta_predicate / 1`-Direktivenwarnungen, wenn der eigentliche Meta-Aufruf keine Variablen mit den anderen teilt Klausel Kopf.


* VERBESSERT: Verwendung von Lambda-Ausdrücken in Grammatikregeln, ohne dass ein `call // 1'-Wrapper erforderlich ist.


* FIXED: Optimierungsfehler beim Kompilieren eines Abschluss-Metaarguments, wenn das resultierende Ziel ein Aufruf eines Prolog-integrierten Prädikats ist, da eine Benutzerprädikatdefinition eingefügt wurde.


* FIXED: Optimierungsfehler beim Kompilieren eines Abschluss-Metaarguments, wenn das resultierende Ziel ein Aufruf eines Prolog `: / 2'-Kontrollkonstrukts ist.

Was ist neu in Version 3.19:

* HINZUGEFÜGT: Unterstützung für die Definition zusätzlicher integrierter Prolog-Prädikate für Lint
Überprüfung von Zielen, die immer wahr oder falsch zu den Adapterdateien sind
Haken Prädikat `'$ lgt_candidate_tautology_or_falsehood_goal_hook' / 1`.


* HINZUGEFÜGT: Objekteigenschaft `Modul` für Objekte, die aus der Kompilierung resultieren
von Prolog-Modulen.


* HINZUGEFÜGT: Convenience Fehler werfen eingebaute Methoden `syntax_error / 1` und
`System_Fehler / 0`. Diese Methoden werfen Standard-Ausnahmefehler aus "Fehler / 2"
und sind äquivalent zu einer Folge von 'context / 1'- und throw / 1'-Methodenaufrufen.


* ENTFERNT: Unterstützung für veraltetes Logtalk 2.x `calls / 1`,` uses / 1` und
`alias / 3`-Anweisungen.


* ENTFERNT: Unterstützung für veraltetes Logtalk 2.x `: / 1` Kontrollkonstrukt.


* ENTFERNT: Unterstützung für veraltetes Logtalk 2.x `unbekannt`,` Singletons`,
`tmpdir` und` version` Compilerflags.

Was ist neu in Version 3.14:

NEU: Unterstützung für _parameter variables_ bietet eine Alternative zum
`parameter / 2` und` this / 1` eingebaute Methoden um auf Entity-Parameter zuzugreifen.
Parametervariablen sind Variablen, die in der parametrischen Entitätskennung verwendet werden
das beginnt und endet mit einem Unterstrich (`_VariableName_`). Jedes Vorkommen
einer Parametervariablen in einer Entitätsklausel ist implizit mit der
Entitätsparameter Dadurch können Entity-Parameter hinzugefügt, neu angeordnet oder geändert werden
entfernt, ohne dass die Klauseln, die sich auf sie beziehen, geändert werden müssen.
Parametervariablen werden nur für parametrische Einheiten unterstützt, die in definiert sind
Quelldateien

Was ist neu in Version 3.13:.

NEU: Compiler-Unterstützung für Anrufe zu lokalen statischen Prädikaten ohne Anpassungsklauseln Erkennung (auch bekannt als trivial ausfällt ).

Was ist neu in Version 3.11.1:

* VERBESSERT: Compiler-Warnungen und Fehlermeldungen, um sie einheitlicher zu machen, um das Parsen durch Editoren und IDEs zu erleichtern und das Drucken von möglicherweise großen Termen zu vermeiden.


* VERBESSERT: Der Compiler benötigt keine Aufrufe an die Datenbank und Reflektionsprädikate, bei denen das erste Argument ein modulqualifizierter Begriff ist, der mit Hilfe des `{} / 1`-Compiler-Bypass-Steuerkonstrukts umschlossen wird.


* VERBESSERT: Compiler-Fehlerprüfung für Datenbank- und Reflexionsprädikataufrufe, bei denen das erste Argument ein modulqualifizierter Begriff ist.


* VERBESSERT: Minimiert die Anzahl der Dateineuladungen, die durch Aufrufe der Prädikate 'logtalk_make / 0-1' ausgelöst werden.


* FIXED: Fall, in dem die Prädikate 'logtalk_make / 0-1' eine Datei, deren Kompilierung einen Compiler-Fehler generiert hat, nicht erneut laden konnten.

Was ist neu in Version 3.11:

* CHANGED: Das eingebaute Prädikat `current_event / 5`, um immer das erste Argument zu instanziieren, wenn es ungebunden aufgerufen wird.


* HINZUGEFÜGT: Unterstützung für das Überschreiben des Standard-Scratch-Verzeichnisses durch Definieren
der Bibliotheksalias `scratch_directory` in einer Back-End-Prolog-Initialisierungsdatei
(es wird davon ausgegangen, dass es vor dem Logtalk-Laden geladen wird). Nach einer Diskussion mit
Douglas R. Miles unterstützt die Installation von Logtalk in einem schreibgeschützten Verzeichnis
und gleichzeitiges Ausführen mehrerer Logtalk-Instanzen ohne Konflikt


* HINZUGEFÜGT: Eine `kontext / 1'-eingebaute Kontextausführungsmethode, um Zugriff bereitzustellen
zu einem Prädikat Call Execution Context. Wird hauptsächlich zum Bereitstellen eines Standardwerts verwendet
Fehlerkontext bei der Überprüfung von Prädikatargumenten.


* HINZUGEFÜGT: Unterstützung für das Drucken von Nachrichten vom Typ `debug` und` debug (_) `. Diese
Nachrichten werden standardmäßig nur gedruckt, wenn das `Debug'-Flag aktiviert ist.


* HINZUGEFÜGT: Eigenschaft `schließt (Datei)` in die `logtalk :: geladene_Datei_Eigenschaft / 2` ein
Prädikat, um das Zurückzählen aller von a
geladene Datei (mit `include / 1` Direktiven).

Was ist neu in Version 3.10.7:

* RENAMED: Das `logtalk_make / 1` Ziel fehlt` `check``.


* HINZUGEFÜGT: Unterstützung für das Erweitern von `logtalk_make / 1` Zielen mit benutzerdefinierten
Aktionen, die das neue Mehrfachvergleichsprädikat `logtalk_make_target_action / 1` verwenden.


* HINZUGEFÜGT: Compiler-Lint prüft auf Tautologie- und Unwahrheitsentitätsziele.
Derzeit werden Aufrufe von Prolog-Vereinheitlichung, Vergleich und Typ geprüft
Integrierte Prädikate testen. Vorgeschlagen von Barry Evans.

Was ist neu in Version 3.10.5:

* FIXED: Regression eingeführt in Version 3.10.2 bei Meta-Aufruf Ausführung Kontext eingebaute Methoden.

* FIXED: Fehler beim Compiler, der sich aus der Anwendung von Portabilitätsüberprüfungen auf Aufrufe von in Prolog integrierten Prädikaten und Funktionen in Hilfsklauseln ergibt (normalerweise generiert durch den Term-Expanding-Mechanismus).

Was ist neu

? strong> in Version 3.10.3:

* VERBESSERT: Vereinfachter Code, der für Mehrfachvergleichselemente erstellt wurde.


* FIXED: Regression in der vorherigen Version in der Zusammenstellung von Multifile
Prädikatsklauseln, die Aufrufe an die `:: / 1-2'-Steuerkonstrukte vornehmen.

Was ist neu in Version 3.09.1:

* HINZUGEFÜGT: Unterstützung für `number_of_rules / 1` und` number_of_user_rules / 1` Objekt
und Kategorieeigenschaften.


* HINZUGEFÜGT: Unterstützung für die Prädikateigenschaft `number_of_rules / 1`.


* HINZUGEFÜGT: Erkennung von `meta_predicate / 1`-Direktiven, die ein Ziel falsch spezifizieren
Meta-Argument, das eigentlich eine Closure ist, die an das Meta-Prädikat "call / 2-N" übergeben wird
Anrufe. Danke an Arun Majumdar für den Bericht.


* HINZUGEFÜGT: Erkennung fehlender Prädikatbereichsrichtlinien in Anwesenheit von
`mode / 2` Direktiven.

Was ist neu in Version 3.09.0:

* GEÄNDERT: Einstellungsdateien werden jetzt auch im Benutzer nachgeschlagen Heimverzeichnis
wenn nicht im Startverzeichnis oder im Logtalk-Benutzerverzeichnis gefunden.
Wenn Sie das Flag "settings_file" auf "restricte" setzen, wird jetzt die Suche eingeschränkt
eine Einstellungsdatei für das Logtalk-Benutzerverzeichnis und das Benutzerhostverzeichnis.
Diese Änderungen sind nützlich, wenn ein Team eine Logtalk-Installation mit beiden gemeinsam nutzt
die Umgebungsvariablen `LOGTALKHOME` und` LOGTALKUSER` zeigen auf die
dasselbe Verzeichnis. Vielen Dank an Barry Evans für den Vorschlag.

Was ist neu in Version 3.08.0:

* GEÄNDERT: Stellen Sie sicher, dass in Compilerfehler- und Warnmeldungen der Datei- und Zeileninformationen sind immer die letzte Zeile für das gemeldete Problem.

Was ist neu in Version 3.07.0:

* HINZUGEFÜGT: Ein `Unicode`-Read-Only-Flag zur Beschreibung des Back-End-Prolog-Compilers
Unterstützung für den Unicode-Standard.


* HINZUGEFÜGT: Unterstützung für `++` (Ground) und `--` (ungebunden) Argument Instanziierung
Modi (als Präfixoperatoren deklariert) zur Verwendung mit dem Prädikat `mode / 2`
Richtlinie.


* HINZUGEFÜGT: Unterstützung für `one_or_error` Determinismusspezifikation in` mode / 2`
Prädikat-Direktiven. Nützlich für die Dokumentation von Typprüfungsprädikaten.


* VERBESSERT: Erkenne Versuche, existenziell quantifizierte Ziele außerhalb der
Umfang der Aufrufe "bagof / 3" und "setof / 3".


* FIXED: Beim Kompilieren von `uses / 2` Direktiven sollte keine Verknüpfungsklausel für erstellt werden
Laufzeit Verwendung für integrierte Prädikate in 'Benutzer', wenn kein Alias ​​definiert ist.


* FIXED: Wenn ein Kompilierungsfehler für eine Datei an die übergeordneten Dateien weitergegeben wird,
Stellen Sie sicher, dass die Datei-Vorfahren mit dem obersten Vorfahren neu geladen werden
durch den make-Mechanismus.


* FIXED: Vermeiden Sie redundante Datei-Reloads beim Aufruf von `logtalk_make / 0` oder
`logtalk_make / 1` mit dem Ziel` all`.


* FIXED: Erkennung von fehlenden Prädikaten in `^^ / 1'-Rufen beim Aufruf
`logtalk_make / 1` mit dem Ziel` missing`.

* FIXED: Fehler in der Reflection-API, wo einige Prädikat-Querverweise auftreten
Informationen wurden nicht aufgezeichnet. Danke an Edward Schwartz für den Fehlerbericht.

Was ist neu in Version 3.06.2:

Diese Version setzt die Arbeit an der Verbesserung der Entwicklerwerkzeuge fort das Sponsoring von Kyndi, Inc. Es enthält eine neue Version des Wrapper-Tools für die Portierung von einfachen Prolog-Anwendungen sowie Verbesserungen und Korrekturen für die Tools von gtunt und diagrams. Es enthält auch neue Komponententests, Compiler- und Dokumentationspatches sowie ein Kompatibilitätsupdate für Lean Prolog.

Was ist neu in Version 3.04.1:

* FIXED: Compiler-Fehler, bei dem ein Prädikat, das durch den Aufruf der Methode `compile_aux_clauses / 1` durch einen Ausdruck erweitert wurde, fälschlicherweise als nicht zusammenhängend gemeldet wurde.


* FIXED: Aufrufe des integrierten Prädikats `thread_notify / 1` aus dem Pseudoobjekt` user` dürfen kein gebundenes Argument gemäß Dokumentation erfordern.


* FIXED: Aufrufe der eingebauten Prädikate `object_property / 2` und category_property / 2` mit` number_of_clauses / 1` oder `number_of_user_clauses / 1` Eigenschaftsargumenten sind deterministisch.

Was ist? neu in Version 3.03.0:

* FIXED: Fehler beim Überprüfen des Fehlers in Lambda-Ausdrücken mit `true / 0` als Lambda
Tor. Danke an Boris Vassilev für den Fehlerbericht.


* FIXED: Das Prädikat `logtalk_make / 1` wäre erfolgreich (nach dem Ausdruck einer Warnung)
Nachricht), wenn sie mit einem nicht-instanziierten oder ungültigen Argument aufgerufen wird
Versagen. zum
generierte Prolog-Dateien mit einem Multiple-Prädikat für eine bessere
Einbettungserfahrung. Insbesondere erleichtert es die inkrementelle Einbettung.


* VERBESSERT: Die Make-Prädikate laden jetzt auch die übergeordneten Dateien von Dateien mit
Kompilierungs- oder Ladefehler. Dadurch wird sichergestellt, dass bei einer fehlerhaften Datei der
Kompilierung aller Dateien in einer Loader-Datei, die nach dem Fehler aufgelisteten Dateien
Datei wird kompiliert, wenn die fehlerhafte Datei repariert ist und die make-Prädikate sind
aufgerufen.

Was ist neu in Version 3.02.1:

* VERBESSERT: Die Einträge in der Laufzeittabelle für geladene Dateien werden jetzt zu den generierten Prolog-Zwischendateien hinzugefügt, wobei ein Mehrdatei-Prädikat für eine bessere Einbettung verwendet wird. Insbesondere erleichtert es die inkrementelle Einbettung.
 * VERBESSERT: Die make-Prädikate laden jetzt auch die übergeordneten Dateien von Dateien mit Kompilierungs- oder Ladefehlern neu. Dies stellt sicher, dass, wenn eine fehlerhafte Datei die Kompilierung aller Dateien in einer Ladedatei abbricht, die nach der fehlerhaften Datei aufgelisteten Dateien kompiliert werden, wenn die fehlerhafte Datei repariert wird und die make-Prädikate aufgerufen werden.

Was ist neu in Version 3.01.2:

Diese Version schließt die statische Bindungsimplementierung ab; Fügt Unterstützung für die Verwendung von Dateinamen hinzu, wie sie mit den Prädikaten zum Kompilieren und Laden vorhanden sind; behebt Compiler Bugs; Enthält Dokumentationsaktualisierungen. verbessert die Debugging-, Test- und Dokumentationstools; fügt einen neuen Satz von Komponententests hinzu, um Prologs Konformität mit offiziellen und de-facto Standards zu überprüfen; aktualisiert die Syntaxfarben für alle unterstützten Texteditoren und Syntax-Highlighter; und enthält Kompatibilitätsupdates für ECLiPSe, JIProlog und YAP.

Anforderungen :

Kompatibler Prolog-Compiler.

Ähnliche Software

TGen
TGen

3 Jan 15

HexDecBin
HexDecBin

3 Jan 15

Open Prolog
Open Prolog

4 Jan 15

Andere Software von Entwickler Logtalk

Logtalk
Logtalk

3 May 15

Kommentare zu Logtalk

Kommentare nicht gefunden
Kommentar hinzufügen
Schalten Sie auf die Bilder!