GRAAL: A functional programming system with uncurryfied combinators and its reduction machine. (English) Zbl 0587.68002

Programming, Proc. Eur. Symp., Saarbr├╝cken/FRG 1986, Lect. Notes Comput. Sci. 213, 82-98 (1986).
[For the entire collection see Zbl 0578.00005.]
This work presents a new programming language issued from functional programming systems of J. W. Backus. GRAAL is a functional programming language without variables. The basic tools provided for expressing functions are functional forms in FP systems. The main change is that functional forms are constructed using uncurryfied combinators, that is polyadic combinators. The introduction of a new kind of functional form (user form) allows users of the system to define their own functional forms and to compute them dynamically. Another difference with FP systems is that functions are polyadic. The main consequence of these choices is an efficient reduction machine, implementing the language, which is described here. Independently of efficiency considerations, GRAAL seems to be a realistic programming language.


68N01 General topics in the theory of software


Zbl 0578.00005