Sistema de Tipos: Uma Visão Geral

Elaine G. Pimentel, Lucília Camarão e Carlos Camarão

Estudos normais sobre tipos têm influenciado, de forma significativa, o projeto e definição de linguagens de programação. Neste tutorial são apresentados conceitos fundamentais sobre sistemas de tipos de linguagens de programação e são discutidos alguns sistemas de tipos que formalizam conceitos utilizados em linguagens de programação modernas, tais como polimorfismo, sobrecarga e subtipagem. Os tópicos abordados incluem relevância do uso de tipos em linguagens de programação, definição formal da sintaxe de linguagens tipadas através de sistemas de tipos, propriedades requeridas de sistemas de tipos de linguagens de programação, sistemas de tipos simples, sistemas de tipos polimórficos, inferência de tipos, polimorfismo restrito, subtipagem e tipos abstratos.