Sciweavers

ML
2008
ACM

Unrestricted pure call-by-value recursion

14 years 12 days ago
Unrestricted pure call-by-value recursion
Call-by-value languages commonly restrict recursive definitions by only allowing functions and syntactically explicit values in the right-hand sides. As a consequence, some very appealing programming patterns that work well in lazy functional languages are hard to apply in a call-by-value setting, even though they might not be using laziness for any other purpose than to enable the desired form of recursion. In this paper we present an operational semantics as well as a straightforward implementation technique for unrestricted recursion under pure call-by-value. On that basis we are able to demonstrate that highly recursive programming idioms such as combinator-based parsing are indeed compatible with call-by-value evaluation. Categories and Subject Descriptors D.3.3 [Programming languages]: Languages constructs and features--Recursion General Terms Languages, theory, experimentation Keywords Call-by-value, value recursion, semantics, implementation, combinator libraries.
Johan Nordlander, Magnus Carlsson, Andy Gill
Added 13 Dec 2010
Updated 13 Dec 2010
Type Journal
Year 2008
Where ML
Authors Johan Nordlander, Magnus Carlsson, Andy Gill
Comments (0)