The Representation and Transformation of Functions
A new approach to the study of programming languages is developed, which emphasized the sequence of information structures generated by a program during its execution. In section 1 a class of models called information structure models is developed for characterizing computations as sequences of transformations of information structures. The notion of binding time is introduced and different binding strategies for programming languages are considered. Section 2 considers the representation of functions by symbol tables and analyzes a number of examples of such functions, such as assemblers and macro systems. Section 3 introduces a very simple programming language for funcitn evaluation known as the lambda calculus, and considers information structure models for alternative evaluation strategies in the lambda calculus. Section 4 shows that ALGOL computations can be specified as information structure models with the same basic characteristics as lambda calculus computations but with a richer set of primitives, and indicates how languages such as PL/I can be characterized as information structure models.
computer science; technical report
Previously Published As