docs/03-reference.markdown @ d80af96eaf15
Rewrite registers to be addresses, not cells
Also add initial (incomplete) implementations of the unification instructions.
author |
Steve Losh <steve@stevelosh.com> |
date |
Sun, 27 Mar 2016 18:32:37 +0000 |
parents |
9d90efbd8787 |
children |
dfba7d90a8a5 |
# API Reference
The following is a list of all user-facing parts of Bones.
If there are backwards-incompatible changes to anything listed here, they will
be noted in the changelog and the author will feel bad.
Anything not listed here is subject to change at any time with no warning, so
don't touch it.
[TOC]
## Package BONES.PAIP
Test?
### \*CHECK-OCCURS\* (variable)
Whether to perform an occurs check.
### BOUND-P (function)
(BOUND-P VAR)
Return whether the given variable has been bound.
### CLEAR-DB (function)
(CLEAR-DB)
### FACT (macro)
(FACT &REST BODY)
### FAIL (variable)
Failure to unify
### NO-BINDINGS (variable)
A succesful unification, with no bindings.
### QUERY (macro)
(QUERY &REST GOALS)
Perform the query interactively.
### QUERY-ALL (macro)
(QUERY-ALL &REST GOALS)
Perform the query and automatically show all results.
### QUERY-ONE (macro)
(QUERY-ONE &REST GOALS)
Perform the query and just show the first result.
### RETURN-ALL (macro)
(RETURN-ALL &REST GOALS)
### RETURN-ONE (macro)
(RETURN-ONE &REST GOALS)
### RULE (macro)
(RULE &REST CLAUSE)
### UNBOUND (variable)
A magic constant representing an unbound variable.
### UNIFY (function)
(UNIFY X Y &OPTIONAL (BINDINGS NO-BINDINGS))
Unify the two terms and return bindings necessary to do so (or FAIL).
### UNIFY! (function)
(UNIFY! X Y)
Destructively unify two expressions, returning whether it was successful.
Any variables in `x` and `y` may have their bindings set.