Funções sobrecarregadas como objeto de primeira classe

AUTOR(ES)
DATA DE PUBLICAÇÃO

2010

RESUMO

O uso de polimorfismo em linguagens de programação constitui um importante recurso para reuso de código e para clareza e concisão de programas. A base para implementação de polimorfismo em linguagens de programação modernas é o sistema de tipos de Hindley-Milner (HM) e uma extensão bastante útil desse sistema é a possibilidade de definição de símbolos sobrecarregados (com tipo polimórfico restrito). No sistema HM a inferência de tipos é relativamente simples, em razão de sua restrição de que parâmetros de funções devem ter tipo monomórfico. Esse requerimento pode entretanto ser um inconveniente em diversas aplicações. Este trabalho propõe uma extensão ao sistema de tipos de Hindley-Milner + sobrecarga, a qual possibilita a definição de funções com parâmetros de tipo polimórfico, mediante anotação explícita do tipo de tais funções pelo programador, sendo esses tipos especificados na forma de tipos interseção. No sistema proposto, funções com parâmetros polimórficos podem tanto ser aplicadas a argumentos de tipo polimórfico paramétrico (como em sistemas de polimorfismo de rank superior), como a argumentos de tipo polimórfico restrito, promovendo valores sobrecarregados a objetos de primeira classe .

ASSUNTO(S)

computação teses. linguagem de programação (computadores) teses. programação (computadores) teses.

Documentos Relacionados