Common Lisp Package: CL-OP

README:

FUNCTION

Private

BETA-REDUCE (G12 &OPTIONAL G13 (G14 #'VALUES))

Beta-reduction.

FILL-SLOTS (G0 &OPTIONAL G1 (G2 #'VALUES))

Fill slots with coresponding elements in arguments.

LIFT-INVARIANTS (G332 &OPTIONAL G333 (G334 #'VALUES))

Bind subforms suitable for early evaluation.

LIFTABLEP (FORM)

Can FORM be evaluated early?

RECUR-LIFT-P (FORM)

Does FORM contain subforms that could be evaluated early?

RECURP (FORM)

Is FORM non-terminal?

REST-SLOT-P (OBJECT)

Is OBJECT a rest slot designator?

RNOTANY (PREDICATE TREE &KEY (RECUR-IF #'CONSP))

Recursive NOTANY.

SIMPLE-SLOT-P (OBJECT)

Is OBJECT a simple slot designator?

SLOTP (OBJECT)

Is OBJECT a slot designator?

SLOTS-TO-ARGUMENTS (G178 &OPTIONAL G179 (G180 #'VALUES))

Assign names to slots.

SPECIAL-FORM-P (FORM)

Is FORM a special form?

STARTS-WITH (LIST HEAD)

Does LIST start with HEAD?

WALK (FUNCTION FORM &KEY FOLD (CONT #'VALUES))

Walk FORM applying FUNCTION to each node. Uses CPS.

MACRO

Public

OP (&REST FORM &ENVIRONMENT *ENVIRONMENT*)

Make an anonymous function with implicit arguments.

OP* (&REST FORM)

Make an anonymous function with implicit arguments. Defer evaluation.

Private

Undocumented

DEFWALK (NAME ARGUMENTS &BODY BODY)