Causal programming in Clojure.
The easiest way to get started is with Leiningen (requires Java, OpenJDK 8 recommended). Once Leiningen is installed, create a new project:
lein new whittemore demo
cd demo
A REPL can be started from within the project directory:
lein repl
Rich output (HTML, images, LaTeX) is available in Jupyter notebooks. Once Jupyter installed:
lein jupyter install-kernel # first time only
lein jupyter notebook
Graphviz is recommended for rendering causal diagrams. Whittemore will automatically fallback to viz.cljc if Graphviz is not installed, but this is much slower.
(use 'whittemore.core)
(identifiable?
(model
{:x [],
:z [:x],
:y [:z]}
#{:x :y})
(data [:x :y :z])
(q [:y] :do [:x]))
;=> true
Copyright © 2018 Joshua Brule
Distributed under the Eclipse Public License either version 1.0 or (at your option) any later version.
Can you improve this documentation?Edit on GitHub
cljdoc is a website building & hosting documentation for Clojure/Script libraries
× close