/eyvind

Eyvind is (not yet) an experimental distributed rule engine written in Clojure

Primary LanguageClojureEclipse Public License 1.0EPL-1.0

Eyvind

Return to Ithaca

for a narrative art, far-seeing in lands and ages, in the service of freedom -- Eyvind Johnson, Nobel Prize in Literature 1974 (shared with Harry Martinson)

I was hacking on this during summer 2015, it doesn't really do anything yet. Has a Bitcask and some CRDT implementations in Clojure that might be of interest. I hope to revisit this in 2016

Eyvind is (not yet) an experimental distributed rule engine written in Clojure.

Foundations inspired by Riak Core. Higher level inspired by Dedalus, Linear Meld, CRDTs and Angelic CHR. Aims to provide Constraint Handling Rules as language, built on a lower-level distributed Datalog and linear logic. Minimal set of dependencies (JeroMQ and tools.logging) to facilitate use as library. Standalone mode with REST (and ZeroMQ) API to be provided as add-on.

References

Dynamo / Riak

Constraint Handling Rules

Distributed Datalog and Linear Logic

Convergent and Commutative Replicated Data Types (CRDTs)

License

Copyright © 2015 Håkan Råberg

Distributed under the Eclipse Public License either version 1.0 or (at your option) any later version.