tatara-eval 0.2.167

Optimized in-memory Lisp interpreter for tatara — evaluates Sexp to Value, produces typed Derivations, composes with tatara-nix realizers
docs.rs failed to build tatara-eval-0.2.167
Please check the build logs for more information.
See Builds for ideas on how to fix a failed build, or Metadata for how to configure docs.rs builds.
If you believe this is docs.rs' fault, open an issue.

tatara-eval — an optimized in-memory Lisp interpreter.

Takes Sexp from tatara-lisp, evaluates to Value. Produces typed Derivation values via the derivation builtin, which tatara-nix::realize then builds into concrete store paths (either our own store or the live /nix/store on disk).

source  ──read──►  Sexp  ──eval──►  Value
                                     │
                                     ▼ (if Derivation)
                           tatara-nix::realize
                                     │
                                     ▼
                                StorePath

The interpreter is Rust-bordered (you get a typed Derivation or a typed error, never a partially-built thing), Lisp-authorable, and cheap to clone thanks to Arc-backed Value cells. A future &'arena form can replace the Arcs without changing the public API.