ACM Computing Surveys (CSUR)
EULER: a generalization of ALGOL, and its formal definition: Part II
Communications of the ACM
Design of a separable transition-diagram compiler
Communications of the ACM
The specification of program flow in Madcap 6
ACM '72 Proceedings of the ACM annual conference - Volume 2
A data type encapsulation scheme utilizing base language operators
Proceedings of the 1976 conference on Data : Abstraction, definition and structure
Global variable considered harmful
ACM SIGPLAN Notices
LISP 1.5 Programmer's Manual
The contour model of block structured processes
ACM SIGPLAN Notices
Hi-index | 0.00 |
The modularization construct of subroutine, function, or procedure is well established in the scientific programming languages of today. In most cases, however, the construct is static in that once a function is defined and named it remains unchanged throughout the scope of its definition. We are concerned in this paper with the generalization to a function data type, that is, to the situation where one may have variables of type function which assume different specific procedures as their value within their scope. Notationally, implementation of the concept is made feasible by use of a juxtaposition operator. Computationally, the concept derives its usefulness from use of the contour model which allows activation record retention. Examples are given which show that the function data type concept subsumes less general techniques such as "coroutines" and "stream functions."