joetjen.net
EN DE
← Alle Bibliotheken
Elixir

aletheia

Ein eingebetteter Prolog-Dialekt für Elixir — was Clojure für Common Lisp ist, ist Aletheia für Prolog.

Absicht

Klassische Prolog-Syntax auf der BEAM: vorhandenes Prolog-Wissen lässt sich direkt übertragen. Der Reader baut auf Ichors Parsing-Substrat auf, darunter arbeitet Episteme.

Beispiel
grandparent(X, Z) :- parent(X, Y), parent(Y, Z).

Aletheia.query("grandparent(tom, Who)", db)
#=> {:ok, [%{"Who" => :ann}, %{"Who" => :pat}]}
Installation
{:aletheia, "~> 0.1"}
ElixirPrologDCG