Expand description
An implementation of the µKanren relational programming system in Rust.
Macros§
- state
- Convenience macro for making state objects using the
ToValuetrait.
Structs§
- Boxed
Goal - A boxed goal for type erasure, constructed from
Goal::boxed. - State
- The current variable state of the miniKanren interpreter.
Enums§
- Value
- An object in µKanren that can be unified.
Traits§
- Atom
- Trait representing an atomic type.
- Fresh
- Trait for closures that can take fresh variables.
- Goal
- A goal that can be executed by the relational system.
- ToValue
- A type that can be converted to a value.
Functions§
- cons
- Construct a cons cell from two values.
- delay
- Goal that introduces inverse-η delay to handle infinite streams.
- eq
- Goal for unifying two values.
- fresh
- Goal that introduces one or more fresh relational variables.
- list
- Construct a list out of cons cells.
- run
- Top-level entry point for running a goal with fresh variables.