Several Types of Types in Programming Languages

Simone Martini 1, 2
1 FOCUS - Foundations of Component-based Ubiquitous Systems
CRISAM - Inria Sophia Antipolis - Méditerranée , DISI - Dipartimento di Informatica - Scienza e Ingegneria [Bologna]
Abstract : Types are an important part of any modern programming language, but we often forget that the concept of type we understand nowadays is not the same it was perceived in the sixties. Moreover, we conflate the concept of " type " in programming languages with the concept of the same name in mathematical logic, an identification that is only the result of the convergence of two different paths, which started apart with different aims. The paper will present several remarks (some historical, some of more conceptual character) on the subject, as a basis for a further investigation. We will argue that there are three different characters at play in programming languages, all of them now called types: the technical concept used in language design to guide implementation ; the general abstraction mechanism used as a modelling tool; the classifying tool inherited from mathematical logic. We will suggest three possible dates ad quem for their presence in the programming language literature, suggesting that the emergence of the concept of type in computer science is relatively independent from the logical tradition, until the Curry-Howard isomorphism will make an explicit bridge between them.
Complete list of metadatas

Cited literature [34 references]  Display  Hide  Download

https://hal.inria.fr/hal-01399694
Contributor : Simone Martini <>
Submitted on : Sunday, November 20, 2016 - 4:18:50 PM
Last modification on : Wednesday, October 10, 2018 - 10:09:31 AM
Long-term archiving on : Monday, March 20, 2017 - 8:29:23 PM

File

pisa-proceedings-corrected.pdf
Files produced by the author(s)

Identifiers

Citation

Simone Martini. Several Types of Types in Programming Languages. 3rd International Conference on History and Philosophy of Computing (HaPoC), Oct 2015, Pisa, Italy. pp.216-227, ⟨10.1007/978-3-319-47286-7_15⟩. ⟨hal-01399694⟩

Share

Metrics

Record views

243

Files downloads

263