Correct and Optimal Implementations of Recursion in a Simple Programming Language
暂无分享,去创建一个
The object of this paper is to study the mechanism of recursion in a simple, LISP-like programming language, where the only means of iteration is through recursion. The theory of computation developed in Scott [6] provides the framework of our study. We show how the implementations of recursion which deserve to be called “correct” can be characterized semantically, and demonstrate a general criterion for the correctness of an implementation. We then describe an implementation of recursion which is both correct and optimal in a general class of sequential languages, and therefore constitutes an attractive alternative to both “call-by-name” and “call-by-value”.
[1] Dana S. Scott,et al. Outline of a Mathematical Theory of Computation , 1970 .
[2] James H. Morris,et al. Lambda-calculus models of programming languages. , 1969 .
[3] Jean Vuillemin. Syntaxe, sémantique et axiomatique d'un langage de programmation simple , 1975 .
[4] J. M. Cadiou,et al. Recursive definitions of partial functions and their computations , 1972, Proving Assertions About Programs.