CONS should not Evaluate its Arguments

dc.contributor.authorFriedman, Daniel; Wise, David
dc.date.accessioned2025-10-20T22:05:37Z
dc.date.available2025-10-20T22:05:37Z
dc.date.issued1976-01
dc.description.abstractThe constructor function which allocates and fills records in recursive, side-effect-free procedural languages is redefined to be a non-strict (Vuillemin 1974) elementary operation. Instead of evaluating its arguments, it builds suspensions of them which are not coerced until the suspensions is accessed by strict elementary function. The resulting evaluation procedures are strictly more powerful than existing schemes for languages such as LISP. The main results are that Landin's streams are subsumed into McCarthy's LISP merely by the redefinition of elementary functions, that invocations of LISP's evaluator can be minimized by redefining the elementary functions without redefining the interpreter, and as a strong conjecture, that redefining the elementary functions yields the least fixed-point semantics for McCarthy s evaluation scheme. This new insight into the role of constructor fdunctions will do much to ease the interface between recursive programmers and iterative programmers, as well as the interface between programmers and data structure designers.
dc.identifier.urihttps://hdl.handle.net/2022/33858
dc.relation.ispartofseriesIndiana University Computer Science Technical Reports; TR44
dc.rightsThis work is protected by copyright unless stated otherwise.
dc.rights.uri
dc.titleCONS should not Evaluate its Arguments

Files

Original bundle

Now showing 1 - 1 of 1
Loading...
Thumbnail Image
Name:
TR44.pdf
Size:
2.27 MB
Format:
Adobe Portable Document Format
Can’t use the file because of accessibility barriers? Contact us