Show simple item record

dc.contributor.authorHailperin, Maxen_US
dc.date.accessioned2023-03-29T14:26:25Z
dc.date.available2023-03-29T14:26:25Z
dc.date.issued1985-06
dc.identifier.urihttps://hdl.handle.net/1721.1/149090
dc.description.abstractSeparating a programming language into side-effect-free expressions and effect-only statements should make the language more amenable to axiomatization, as well as providing benefits for style, pedagogy, and implementation efficiency (particularly in parallel-computing environments). This paper shows that such a division does not come at an unreasonable cost in programming convenience. First a dialect of Lisp is defined, in which a distinction is made between statements, which may have side-effects, and expressions, which may not. Next, a representative collection of examples from Abelson and Sussman's Structure and Interpretation of Computer Programs is coded in this dialect of Lisp. Most of the examples divide neatly into functional and imperative portions, and a few relatively clean transformations prove sufficient for the more stubborn cases.en_US
dc.relation.ispartofseriesMIT-LCS-TM-281
dc.titleWhat Price for Eliminating Expression Side-effects?en_US


Files in this item

Thumbnail

This item appears in the following Collection(s)

Show simple item record