Prolog (Programmiersprache)

Prolog
Paradigmen: logisch, deklarativ, oft auch constraintbasiert
Erscheinungsjahr: 1972
Designer: Alain Colmerauer
Entwickler: Philippe Roussell
Typisierung: schwach, dynamisch
Wichtige Implementierungen: SICStus, SWI-Prolog, GNU Prolog, XSB, YAP-Prolog
Dialekte: ISO-Prolog, Edinburgh Prolog, BinProlog, Visual/Turbo Prolog; historisch: micro-Prolog
Standardisierungen: ISO/IEC 13211-1:1995
Beeinflusst von: Planner, Q-Systems, Theorembeweiser, Horn-Klauseln
Beeinflusste: Erlang, Mercury, Mozart/Oz, Picat

Prolog (vom Französischen: programmation en logique,[1] dt.: „Programmieren in Logik“) ist eine Programmiersprache, die Anfang der 1970er-Jahre maßgeblich von dem französischen Informatiker Alain Colmerauer entwickelt wurde und ein deklaratives Programmieren ermöglicht. Sie gilt als die wichtigste logische Programmiersprache.

Erste Implementierungen wichen in ihrer Syntax stark voneinander ab, aber der Edinburgh-Dialekt setzte sich bald als Quasistandard durch. Er war jedoch nicht formal definiert,[2] bis er 1995 zur Grundlage eines ISO-Standards wurde (ISO/IEC 13211-1), der auch ISO-Prolog genannt wird.

Der erste Prolog-Interpreter wurde in Marseille in ALGOL W realisiert. Der erste Ansatz für einen Compiler stammte von David H. D. Warren aus Edinburgh. Dieser hatte als Zielsprache die des Logik-Prozessors Warren’s Abstract Machine und erlaubte deshalb weder dynamische Änderungen noch einen Anschluss rücksetzbarer Prädikate in anderen Programmiersprachen. Der erste voll nutzbare Compiler, der beides erlaubte, wurde von Preben Folkjaer und Christian Pichler in München entwickelt. Er verwandte einen anderen, von der TU Wien stammenden, Zwischencode, der inkrementell kompiliert wurde; wurden Prädikate verändert, wurde das Kompilat gelöscht und beim nächsten Aufruf neu kompiliert.

  1. A. Colmerauer und P. Roussel: The birth of prolog. History of programming languages II. 1996, S. 331–367. (PDF-Dokument; 2,1 MB)
  2. In Ermangelung einer formalen Spezifikation für Edinburgh Prolog wurde meist das DEC-10 PROLOG Manual von Bowen u. a. (1982) oder Programming in Prolog von Clocksin und Mellish herangezogen.

From Wikipedia, the free encyclopedia · View on Wikipedia

Developed by Tubidy