mini-kanren

Crates.iomini-kanren
lib.rsmini-kanren
version0.4.0
sourcesrc
created_at2021-01-09 12:22:26.078204
updated_at2021-01-17 19:44:16.171153
descriptionminiKANREN in Rust
homepage
repositoryhttps://github.com/mbillingr/miniKANREN
max_upload_size
id336338
size82,680
(mbillingr)

documentation

README

miniKANREN

This is a Rust implementation of miniKANREN.

Syntax mapping

Originally, miniKANREN was implemented as a DSL in Scheme, inheriting Scheme's S-expression syntax.

This crate implements miniKANREN as a DSL in Rust, with obviously different syntax.

The table below illustrates how to map from one to the other:

Scheme Rust
(run* q (== q 1)) run!(*, q, eq(q, 1))
(conj a b c) conj!(a, b, c)
(disj a b c) disj!(a; b; c)
Commit count: 94

cargo fmt