MetaCartSign in to MyCiteSeer

Include Citations | Advanced Search | Help

Include Citations | Advanced Search | Help

  --Red

Download:
Download as a PDF | Download as a PS
by D. Gartner, A. Kimms, W. Kluge
http://sunsite.informatik.rwth-aachen.de/Publications/AIB/1992/92-19.dir/92-19-08.ps.gz
Add To MetaCart

Abstract:

This paper describes a compiling graph reduction system which performs high--level program transformations governed by the reduction rules of an untyped applied--calculus. In contrast to other well--known graph reducers, our system completely implements the reduction semantics of a full--fledged--calculus. This renders it possible to support higher--order functions without any restrictions. Functions may be computed by applications of functions to other functions or by partial applications and are returned to the user as high--level programs. Also, programs may be executed in a step--by--step manner under interactive control. All intermediate results are presented to the user as high--level programs. Stepwise program execution provides a convenient high--level debugging facility. stack machine ASP, which gives special support to some key techniques for the execution of untyped functional languages: function calls, parameter passing, dynamic type--checking and heap management. The second part of the paper describes an extension to the original version of--Red which terminates reduction whenever weak normal forms (WNFs) are reached. The extension makes it possible to reduce programs to their normal forms by using the basic mechanisms of the abstract stack machine in conjunction with a novel indexing scheme which resolves naming--conflicts that may occur in the presence of free variables. 1

Citations

150 Lambda lifting: transforming programs to recursive equations – Johnsson - 1985
112 de Bruijn. Lambda calculus notation with nameless dummies, a tool for automatic formula manipulation – G - 1972
108 Efficient compilation of lazy evaluation – Johnsson - 1984
4 A Symmetric Complement to the Lambda Calculus. Technical report, Gesellschaft fur Mathematik und Datenverarbeitung mbH – Berkling - 1976
4 TIM: a simple abstract machine to execute supercombinators – Fairbairn, Wray - 1986
3 ein interaktives codeausfuhrendes Reduktionssystem zur vollstandigen Realisierung eines angewandten --Kalkuls – -RED - 1991
2 Die Reduktionssprache OREL/2. Technical report, Gesellschaft fur Mathematik und Datenverarbeitung – Schlutter, Pless - 1990
1 Eine Prozessor Architektur mit einem neuartigen Stacksystem – Amann - 1992
1 a Graph--Reducer for a Full--Fledged --Calculus – --RED - 1992
1 RED -- An Interactive Reduction System Based on a Full--Fledged --Calculus – Schmittgen, Kluge, et al. - 1989
1 Zur Pragmatik eines operationalisierten -Kalkuls als Basis fur interaktive Reduktionssysteme – Zimmer - 1990