Lambda Calculus Models of Programming Languages
Two aspects of programming languages, recursive definitions and type declarations are analyzed in detail. Church's -calculus is used as a model of a programming language for purposes of the analysis. The main result on recursion is an analogue to Kleene's first recursion theorem: If A= F...
Main Author: | |
---|---|
Other Authors: | |
Published: |
2023
|
Online Access: | https://hdl.handle.net/1721.1/149376 |
Summary: | Two aspects of programming languages, recursive definitions and type declarations are analyzed in detail. Church's -calculus is used as a model of a programming language for purposes of the analysis. The main result on recursion is an analogue to Kleene's first recursion theorem: If A= FA for any A-expressions A and F, then A is an extension of YF in the sense that if E[YE], any expressions containing YF, has a normal form then E[F] =E {A]. Y is Curry's paradoxical combinator. The result is shown to be invariant for many different versions of Y. |
---|