Laurelang

?- Modern declarative logic programming language

Open Devel | Open documentation | Contribute/donate

Scalable

Laurelang presents scalable declarative programming patterns: meta-primitive descriptors, instance-bound predicates, etc

Extensible

Laurelang provides full API to create custom logic environments in order to integrate logic programming into event-driven reality

Fast

Laurelang strives to be as efficient as possible. It implements its own abstract machine and provides programmers with many controls

: ?fac(int) -> int.
?fac(0) -> 1.
?fac(n) -> n * fac(n - 1).
: ?prime(natural).

?prime(1).
?prime(2).
?prime(n) {
    n > 2; n?;
    b = between(1, n);
    &all b {
        n / b ->
            fail();
    };
}

Any questions?

Arseny Kriuchkov, [email protected]