The structural analysis of programming languages
Bruce James MacLennan · Calhoun: The Naval Postgraduate School Institutional Archive (Naval Postgraduate School) · 1981
A language's structures are some of its most important characteristics. These include the data structures -- those mechanisms that the language provides for organizing elementary data values. They also include the control structures, which organize the control flow. Less obviously, they include the same structures, which partition and organize the name space. Languages can be compared relative to their structures in the data, control, and name domains. This report describes a syntax-independent method of representing the structures of a language which facilitates visual complexity comparisons and is amenable to measurement. The data, control, and name structures of a number of languages are analyzed, including Pascal, LISP, Algol-60, Algol-68, the lambda calculus, FORTRAN, and Basic. (Author)