-- Lisp.mesa -- Last Edited May 31, 1983 10:37 pm Greg Nelson -- Last Edited by: Gnelson, December 9, 1983 5:07 pm Lisp: DEFINITIONS = BEGIN Value: TYPE = REF; Pair: PROC [u: Value] RETURNS [BOOL]; Cons: PROC [a, b: Value] RETURNS [Value]; Car: PROC [x: Value] RETURNS [Value]; Cdr: PROC [x: Value] RETURNS [Value]; Rplaca: PROC [x: Value, y: Value]; Rplacd: PROC [x: Value, y: Value]; Cadr: PROC [x: Value] RETURNS [Value]; Caddr: PROC [x: Value] RETURNS [Value]; Cddr: PROC[x: Value] RETURNS [Value]; Reverse: PROC [l: Value] RETURNS [r: Value]; Append: PROC [x, y: Value] RETURNS [Value]; Memq: PROC[x, y: Value] RETURNS [BOOL]; Subst: PROC[target, replacee, replacer: Value] RETURNS [Value]; MapSubst: PROC[target, replaceelist, replacerlist: Value] RETURNS [Value]; Linearize: PROC[l, op: Value] RETURNS [Value]; Unlinearize: PROC[v, op: Value] RETURNS [Value]; END.