Eighteenth Annual IEEE Symposium on

Logic in Computer Science (LICS 2003)

Invited Talk: Types and Programming Languages: The Next Generation (at LICS 2003)

Authors: Benjamin C. Pierce


This tutorial surveys the state of the art in type systems for programming languages, focusing on the achievements and changes in emphasis during the past decade. The first part of the talk considers the trajectory of work on object types, one of the major hot topics of the early- and mid-'90s. Following some fundamental conceptual breakthroughs, the focus of attention in this area has shifted from foundational research to applications to the development and analysis of real-world language designs. The next part outlines recent progress on a number of "bread and butter" type systems topics and their applica- tions in new programming languages: subtyping, polymorphism, type inference, effect systems, dependent types, and type systems for modular programming. The final section introduces some newer topics that have emerged (or gained unexpected promenence) in the past few years, including type systems for concurrent and distributed languages, high-level type systems for low-level languages such as assembly and C, substructural type systems based on linear logic and its relatives, modal type systems, the burgeoning area of language-based security, and--a current focus of my own work--native language support for statically typed XML processing.


    author = 	 {Benjamin C. Pierce},
    title = 	 {Types and Programming Languages: The Next Generation},
    booktitle =  {Proceedings of the Eighteenth Annual IEEE Symp. on Logic in Computer Science, {LICS} 2003},
    year =	 2003,
    editor =	 {Phokion G. Kolaitis},
    month =	 {June}, 
    pages =      {32},
    location =   {Ottawa, Canada}, 
    note =       {Invited Talk},
    publisher =	 {IEEE Computer Society Press}