Volume II: Parallel Languages on PARLE: Parallel Architectures and Languages Europe
Compiling functional languages
Compiling functional languages
Rewrite, rewrite, rewrite, rewrite, rewrite...
POPL '89 Proceedings of the 16th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
LFP '86 Proceedings of the 1986 ACM conference on LISP and functional programming
An efficient machine-independent procedure for garbage collection in various list structures
Communications of the ACM
The calculi of lambda-nu-cs conversion: a syntactic theory of control and state in imperative higher-order programming languages
The Implementation of Functional Programming Languages (Prentice-Hall International Series in Computer Science)
On the adequacy of graph rewriting for simulating term rewriting
ACM Transactions on Programming Languages and Systems (TOPLAS)
EQUATIONAL TERM GRAPH REWRITING
Fundamenta Informaticae
Hi-index | 0.00 |
Turner popularized a technique of Wadsworth in which a cyclic graph rewriting rule is used to implement reduction of the fixed point combinator Y. We examine the theoretical foundation of this approach. Previous work has concentrated on proving that graph methods are, in a certain sense, sound and complete implementations of term methods. This work is inapplicable to the cyclic Y rule, which is unsound in this sense since graph normal forms can exist without corresponding term normal forms. We define and prove the correctness of combinator head reduction using the cyclic Y rule; the correctness of normal reduction is an immediate consequence. Our proof avoids the use of infinite trees to explain cyclic graphs. Instead, we show how to consider reduction with cycles as an optimization of reduction without cycles.