The Semantics of Types in Programming Languages
Carl A. Gunter · 1995
Abstract In the twentieth century, there have been at least two lines of development of the notion of a type. One of these uses types to conquer problems in the foundations of mathematics. For example, type distinctions can resolve troubling paradoxes that lead to inconsistent systems. But a second, more recent, line of investigation into types pursues their application in programming languages. Although computer architectures themselves suggest few type distinctions, ‘higher-level’ programming languages generally use a classification of data into types to serve a variety of different purposes. There are at least four motives for doing this.