Crate ukanren

Source
Expand description

An implementation of the µKanren relational programming system in Rust.

Macros§

  • Convenience macro for making state objects using the ToValue trait.

Structs§

  • A boxed goal for type erasure, constructed from Goal::boxed.
  • The current variable state of the miniKanren interpreter.

Enums§

  • An object in µKanren that can be unified.

Traits§

  • Trait representing an atomic type.
  • Trait for closures that can take fresh variables.
  • A goal that can be executed by the relational system.
  • A type that can be converted to a value.

Functions§

  • Construct a cons cell from two values.
  • Goal that introduces inverse-η delay to handle infinite streams.
  • Goal for unifying two values.
  • Goal that introduces one or more fresh relational variables.
  • Construct a list out of cons cells.
  • Top-level entry point for running a goal with fresh variables.