The kanren-trs Reference Manual

This is the kanren-trs Reference Manual, generated automatically by Declt version 4.0 beta 2 "William Riker" on Mon Feb 26 15:22:23 2024 GMT+0.

Table of Contents


1 Systems

The main system appears first, followed by any subsystem dependency.


1.1 kanren-trs

Source

kanren-trs.asd.

Child Components

2 Files

Files are sorted by type and then listed depth-first from the systems components trees.


2.1 Lisp


2.1.1 kanren-trs/kanren-trs.asd

Source

kanren-trs.asd.

Parent Component

kanren-trs (system).

ASDF Systems

kanren-trs.


2.1.2 kanren-trs/packages.lisp

Source

kanren-trs.asd.

Parent Component

kanren-trs (system).

Packages

kanren-trs.


2.1.3 kanren-trs/kanren.lisp

Dependency

packages.lisp (file).

Source

kanren-trs.asd.

Parent Component

kanren-trs (system).

Public Interface
Internals

2.1.4 kanren-trs/kanren-lib.lisp

Dependency

kanren.lisp (file).

Source

kanren-trs.asd.

Parent Component

kanren-trs (system).

Public Interface

3 Packages

Packages are listed by definition order.


3.1 kanren-trs

Source

packages.lisp.

Use List

common-lisp.

Public Interface
Internals

4 Definitions

Definitions are sorted by export status, category, package, and then by lexicographic order.


4.1 Public Interface


4.1.1 Symbol macros

Symbol Macro: +fail+
Package

kanren-trs.

Source

kanren.lisp.

Symbol Macro: +succeed+
Package

kanren-trs.

Source

kanren.lisp.


4.1.2 Macros

Macro: all (&rest goals)
Package

kanren-trs.

Source

kanren.lisp.

Macro: alli (&rest goals)
Package

kanren-trs.

Source

kanren.lisp.

Macro: choice-case (key-term &body cases)
Package

kanren-trs.

Source

kanren-lib.lisp.

Macro: conda (&body clauses)
Package

kanren-trs.

Source

kanren.lisp.

Macro: conde (&body clauses)
Package

kanren-trs.

Source

kanren.lisp.

Macro: condi (&body clauses)
Package

kanren-trs.

Source

kanren.lisp.

Macro: condu (&body clauses)
Package

kanren-trs.

Source

kanren.lisp.

Macro: defconst (name value &optional documentation)
Package

kanren-trs.

Source

kanren.lisp.

Macro: fresh ((&rest vars) &body goals)
Package

kanren-trs.

Source

kanren.lisp.

Macro: run (num (var) &body goals)
Package

kanren-trs.

Source

kanren.lisp.


4.1.3 Ordinary functions

Function: == (v w)
Package

kanren-trs.

Source

kanren.lisp.

Function: make-binary-relation (mapping)
Package

kanren-trs.

Source

kanren-lib.lisp.

Function: make-nary-relation (n mapping)
Package

kanren-trs.

Source

kanren-lib.lisp.

Function: make-ternary-relation (mapping)
Package

kanren-trs.

Source

kanren-lib.lisp.

Function: map-choice (fun &rest bindings)
Package

kanren-trs.

Source

kanren-lib.lisp.

Function: permute-binary-relation (relation)
Package

kanren-trs.

Source

kanren-lib.lisp.

Function: permute-ternary-relation (relation)
Package

kanren-trs.

Source

kanren-lib.lisp.

Function: reify-subst (id? subst)
Package

kanren-trs.

Source

kanren.lisp.

Function: unify (v w subst)
Package

kanren-trs.

Source

kanren.lisp.

Function: walk* (id? subst)
Package

kanren-trs.

Source

kanren.lisp.


4.1.4 Generic functions

Generic Function: equivp (lhs rhs)
Package

kanren-trs.

Source

kanren.lisp.

Methods
Method: equivp (lhs rhs)
Method: equivp ((lhs vector) (rhs vector))
Method: equivp ((lhs list) (rhs list))
Generic Function: reify-subst-impl (val subst)
Package

kanren-trs.

Source

kanren.lisp.

Methods
Method: reify-subst-impl (val subst)
Method: reify-subst-impl ((val id) subst)
Method: reify-subst-impl ((val cons) subst)
Method: reify-subst-impl ((val vector) subst)
Generic Function: unify-impl (v w subst)
Package

kanren-trs.

Source

kanren.lisp.

Methods
Method: unify-impl (v w subst)
Method: unify-impl ((v id) w subst)
Method: unify-impl (v (w id) subst)
Method: unify-impl ((v cons) (w cons) subst)
Method: unify-impl ((v vector) (w vector) subst)
Generic Function: walk-impl (val subst)
Package

kanren-trs.

Source

kanren.lisp.

Methods
Method: walk-impl (val subst)
Method: walk-impl ((val cons) subst)
Method: walk-impl ((val vector) subst)

4.2 Internals


4.2.1 Special variables

Special Variable: %%+empty-stream+
Package

kanren-trs.

Source

kanren.lisp.

Special Variable: %%+empty-subst+
Package

kanren-trs.

Source

kanren.lisp.

Special Variable: %%+fail+
Package

kanren-trs.

Source

kanren.lisp.

Special Variable: %%+succeed+
Package

kanren-trs.

Source

kanren.lisp.


4.2.2 Symbol macros

Symbol Macro: +empty-stream+
Package

kanren-trs.

Source

kanren.lisp.

Symbol Macro: +empty-subst+
Package

kanren-trs.

Source

kanren.lisp.


4.2.3 Macros

Macro: all-aux (bnd &rest goals)
Package

kanren-trs.

Source

kanren.lisp.

Macro: case-inf (expr on-zero single-clause choice-clause)
Package

kanren-trs.

Source

kanren.lisp.

Macro: cond-aux (ifer &body clauses)
Package

kanren-trs.

Source

kanren.lisp.

Macro: ifa (goal0 goal1 goal2)
Package

kanren-trs.

Source

kanren.lisp.

Macro: ife (goal0 goal1 goal2)
Package

kanren-trs.

Source

kanren.lisp.

Macro: ifi (goal0 goal1 goal2)
Package

kanren-trs.

Source

kanren.lisp.

Macro: ifu (goal0 goal1 goal2)
Package

kanren-trs.

Source

kanren.lisp.

Macro: mzero ()
Package

kanren-trs.

Source

kanren.lisp.

Macro: unit (a)
Package

kanren-trs.

Source

kanren.lisp.


4.2.4 Ordinary functions

Function: bind (a-inf goal)
Package

kanren-trs.

Source

kanren.lisp.

Function: bindi (a-inf goal)
Package

kanren-trs.

Source

kanren.lisp.

Function: binding-id (binding)
Package

kanren-trs.

Source

kanren.lisp.

Function: binding-val (binding)
Package

kanren-trs.

Source

kanren.lisp.

Function: choice (head tail)
Package

kanren-trs.

Source

kanren.lisp.

Reader: choice-head (instance)
Writer: (setf choice-head) (instance)
Package

kanren-trs.

Source

kanren.lisp.

Target Slot

head.

Function: choice-p (object)
Package

kanren-trs.

Source

kanren.lisp.

Reader: choice-tail (instance)
Writer: (setf choice-tail) (instance)
Package

kanren-trs.

Source

kanren.lisp.

Target Slot

tail.

Function: copy-choice (instance)
Package

kanren-trs.

Source

kanren.lisp.

Function: copy-id (instance)
Package

kanren-trs.

Source

kanren.lisp.

Function: extend-subst (rhs lhs subst)
Package

kanren-trs.

Source

kanren.lisp.

Function: id (name)
Package

kanren-trs.

Source

kanren.lisp.

Function: id-bound-p (id subst)
Package

kanren-trs.

Source

kanren.lisp.

Reader: id-name (instance)
Package

kanren-trs.

Source

kanren.lisp.

Target Slot

name.

Function: id-p (object)
Package

kanren-trs.

Source

kanren.lisp.

Function: map-inf (n p a-inf)
Package

kanren-trs.

Source

kanren.lisp.

Function: mplus (a-inf fun)
Package

kanren-trs.

Source

kanren.lisp.

Function: mplusi (a-inf fun)
Package

kanren-trs.

Source

kanren.lisp.

Function: reify (id?)
Package

kanren-trs.

Source

kanren.lisp.

Function: reify-name (n)
Package

kanren-trs.

Source

kanren.lisp.

Function: walk (id? subst)
Package

kanren-trs.

Source

kanren.lisp.


4.2.5 Structures

Structure: choice
Package

kanren-trs.

Source

kanren.lisp.

Direct superclasses

structure-object.

Direct slots
Slot: head
Readers

choice-head.

Writers

(setf choice-head).

Slot: tail
Type

function

Initform

(constantly kanren-trs::+empty-stream+)

Readers

choice-tail.

Writers

(setf choice-tail).

Structure: id
Package

kanren-trs.

Source

kanren.lisp.

Direct superclasses

structure-object.

Direct methods
Direct slots
Slot: name
Type

symbol

Readers

id-name.

Writers

This slot is read-only.


Appendix A Indexes


A.1 Concepts


A.2 Functions

Jump to:   (   =  
A   B   C   D   E   F   G   I   M   P   R   U   W  
Index Entry  Section

(
(setf choice-head): Private ordinary functions
(setf choice-tail): Private ordinary functions

=
==: Public ordinary functions

A
all: Public macros
all-aux: Private macros
alli: Public macros

B
bind: Private ordinary functions
bindi: Private ordinary functions
binding-id: Private ordinary functions
binding-val: Private ordinary functions

C
case-inf: Private macros
choice: Private ordinary functions
choice-case: Public macros
choice-head: Private ordinary functions
choice-p: Private ordinary functions
choice-tail: Private ordinary functions
cond-aux: Private macros
conda: Public macros
conde: Public macros
condi: Public macros
condu: Public macros
copy-choice: Private ordinary functions
copy-id: Private ordinary functions

D
defconst: Public macros

E
equivp: Public generic functions
equivp: Public generic functions
equivp: Public generic functions
equivp: Public generic functions
extend-subst: Private ordinary functions

F
fresh: Public macros
Function, (setf choice-head): Private ordinary functions
Function, (setf choice-tail): Private ordinary functions
Function, ==: Public ordinary functions
Function, bind: Private ordinary functions
Function, bindi: Private ordinary functions
Function, binding-id: Private ordinary functions
Function, binding-val: Private ordinary functions
Function, choice: Private ordinary functions
Function, choice-head: Private ordinary functions
Function, choice-p: Private ordinary functions
Function, choice-tail: Private ordinary functions
Function, copy-choice: Private ordinary functions
Function, copy-id: Private ordinary functions
Function, extend-subst: Private ordinary functions
Function, id: Private ordinary functions
Function, id-bound-p: Private ordinary functions
Function, id-name: Private ordinary functions
Function, id-p: Private ordinary functions
Function, make-binary-relation: Public ordinary functions
Function, make-nary-relation: Public ordinary functions
Function, make-ternary-relation: Public ordinary functions
Function, map-choice: Public ordinary functions
Function, map-inf: Private ordinary functions
Function, mplus: Private ordinary functions
Function, mplusi: Private ordinary functions
Function, permute-binary-relation: Public ordinary functions
Function, permute-ternary-relation: Public ordinary functions
Function, reify: Private ordinary functions
Function, reify-name: Private ordinary functions
Function, reify-subst: Public ordinary functions
Function, unify: Public ordinary functions
Function, walk: Private ordinary functions
Function, walk*: Public ordinary functions

G
Generic Function, equivp: Public generic functions
Generic Function, reify-subst-impl: Public generic functions
Generic Function, unify-impl: Public generic functions
Generic Function, walk-impl: Public generic functions

I
id: Private ordinary functions
id-bound-p: Private ordinary functions
id-name: Private ordinary functions
id-p: Private ordinary functions
ifa: Private macros
ife: Private macros
ifi: Private macros
ifu: Private macros

M
Macro, all: Public macros
Macro, all-aux: Private macros
Macro, alli: Public macros
Macro, case-inf: Private macros
Macro, choice-case: Public macros
Macro, cond-aux: Private macros
Macro, conda: Public macros
Macro, conde: Public macros
Macro, condi: Public macros
Macro, condu: Public macros
Macro, defconst: Public macros
Macro, fresh: Public macros
Macro, ifa: Private macros
Macro, ife: Private macros
Macro, ifi: Private macros
Macro, ifu: Private macros
Macro, mzero: Private macros
Macro, run: Public macros
Macro, unit: Private macros
make-binary-relation: Public ordinary functions
make-nary-relation: Public ordinary functions
make-ternary-relation: Public ordinary functions
map-choice: Public ordinary functions
map-inf: Private ordinary functions
Method, equivp: Public generic functions
Method, equivp: Public generic functions
Method, equivp: Public generic functions
Method, reify-subst-impl: Public generic functions
Method, reify-subst-impl: Public generic functions
Method, reify-subst-impl: Public generic functions
Method, reify-subst-impl: Public generic functions
Method, unify-impl: Public generic functions
Method, unify-impl: Public generic functions
Method, unify-impl: Public generic functions
Method, unify-impl: Public generic functions
Method, unify-impl: Public generic functions
Method, walk-impl: Public generic functions
Method, walk-impl: Public generic functions
Method, walk-impl: Public generic functions
mplus: Private ordinary functions
mplusi: Private ordinary functions
mzero: Private macros

P
permute-binary-relation: Public ordinary functions
permute-ternary-relation: Public ordinary functions

R
reify: Private ordinary functions
reify-name: Private ordinary functions
reify-subst: Public ordinary functions
reify-subst-impl: Public generic functions
reify-subst-impl: Public generic functions
reify-subst-impl: Public generic functions
reify-subst-impl: Public generic functions
reify-subst-impl: Public generic functions
run: Public macros

U
unify: Public ordinary functions
unify-impl: Public generic functions
unify-impl: Public generic functions
unify-impl: Public generic functions
unify-impl: Public generic functions
unify-impl: Public generic functions
unify-impl: Public generic functions
unit: Private macros

W
walk: Private ordinary functions
walk*: Public ordinary functions
walk-impl: Public generic functions
walk-impl: Public generic functions
walk-impl: Public generic functions
walk-impl: Public generic functions