Title :
A self-applicable partial evaluator for the lambda calculus
Author :
Jones, Neil D. ; Gomard, Carsten K. ; Bondorf, Anders ; Danvy, Olivier ; Mogensen, Torben B.
Author_Institution :
Dept. of Comput. Sci., Copenhagen Univ., Denmark
Abstract :
A description is given of theoretical and a few practical aspects of an implemented self-applicable partial evaluator for the call by value untyped lambda calculus with constants, conditionals, and a fixed point operator. A partial evaluator that is both high-order and self-applicable is also described. A solution to the problem of binding time analysis is presented. The partial evaluator is simple, completely automatic, and implemented in a side-effect free subset of Scheme. It has been used to compile, to generate compilers, and to generate a compiler generator
Keywords :
functional programming; high level languages; program compilers; Scheme; compiler generator; conditionals; constants; fixed point operator; lambda calculus; self-applicable partial evaluator; side-effect free subset; time analysis; Assembly; Bonding; Calculus; Computer languages; Computer science; Displays; Program processors;
Conference_Titel :
Computer Languages, 1990., International Conference on
Conference_Location :
New Orleans, LA
Print_ISBN :
0-8186-2036-6
DOI :
10.1109/ICCL.1990.63760