REDUCE

8.4 User Binding Functions

The following functions are available to build one’s own interpreter functions that use the built-in Fluid binding mechanism, and interact well with the automatic unbinding that takes place during Throw and Error calls.

(unbindn N:integer): Undefined expr
Used in user-defined interpreter functions (like prog) to restore previous bindings to the last N values bound.

(lbind1 IDname:id VALUETOBIND:any): Undefined expr
Support for lambda-like binding. The current value of IDname is saved on the binding stack; the value of VALUETOBIND is then bound to IDname.

(pbind1 IDname:id): Undefined expr
Support for prog. Binds nil to IDname after saving value on the binding stack. Essentially (lbind1 IDname nil).