Graph rewriting semantics for functional programming languages

7Citations
Citations of this article
10Readers
Mendeley users who have this article in their library.
Get full text

Abstract

The lambda calculus forms without any question *the* theoretical backbone of functional programming languages. For the design and implementation of the lazy functional language Concurrent Clean we have used a related computational model: Term Graph Rewriting Systems (TGRS’s). This paper wraps up our main conclusions after 10 years of experience with graph rewriting semantics for functional programming languages. TGRS’s are not a direct extension of the lambda calculus, so one sometimes has to re-establish known theoretical results. But TGRS’s are that much closer to the world of functional programming that its use has been proven to be very worthwhile. In TGRS’s functions have names, there are constants, pattern matching and one can choose to either share expressions or copy them.Graph reduction very accurately models the essential behaviour of most implementations of functional languages and therefore it forms a good base for reasoning about reduction properties as well as the time and space consumption of functional applications.With uniqueness typing important information can be derived for efficient implementation and for purely functional interfacing with imperative programs.

Cite

CITATION STYLE

APA

Van Eekelen, M., Smetsers, S., & Plasmeijer, R. (1997). Graph rewriting semantics for functional programming languages. In Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics) (Vol. 1258, pp. 106–128). Springer Verlag. https://doi.org/10.1007/3-540-63172-0_35

Register to see more suggestions

Mendeley helps you to discover research relevant for your work.

Already have an account?

Save time finding and organizing research with Mendeley

Sign up for free