Ambiguity and constrained polymorphism.

Registro completo de metadados
MetadadosDescriçãoIdioma
Autor(es): dc.creatorFigueiredo, Carlos Camarão de-
Autor(es): dc.creatorFigueiredo, Lucília Camarão de-
Autor(es): dc.creatorRibeiro, Rodrigo Geraldo-
Data de aceite: dc.date.accessioned2025-08-21T15:11:05Z-
Data de disponibilização: dc.date.available2025-08-21T15:11:05Z-
Data de envio: dc.date.issued2018-01-18-
Data de envio: dc.date.issued2018-01-18-
Data de envio: dc.date.issued2016-
Fonte completa do material: dc.identifierhttp://www.repositorio.ufop.br/handle/123456789/9269-
Fonte completa do material: dc.identifierhttps://doi.org/10.1016/j.scico.2016.03.007-
Fonte: dc.identifier.urihttp://educapes.capes.gov.br/handle/capes/1004786-
Descrição: dc.descriptionThis paper considers the problem of ambiguity in Haskell-like languages. Overloading resolution is characterized in the context of constrained polymorphism by the presence of unreachable variables in constraints on the type of the expression. A new definition of ambiguity is presented, where existence of more than one instance for the constraints on an expression type is considered only after overloading resolution. This introduces a clear distinction between ambiguity and overloading resolution, makes ambiguity more intuitive and independent from extra concepts, such as functional dependencies, and enables more programs to type-check as fewer ambiguities arise. The paper presents a type system and a type inference algorithm that includes: a constraint-set satisfiability function, that determines whether a given set of constraints is entailed or not in a given context, focusing on issues related to decidability, a constraint-set improvement function, for filtering out constraints for which overloading has been resolved, and a context-reduction function, for reducing constraint sets according to matching instances. A standard dictionary-style semantics for core Haskell is also presented.-
Formato: dc.formatapplication/pdf-
Idioma: dc.languageen-
Direitos: dc.rightsaberto-
Direitos: dc.rightsO periódico Science of Computer Programming concede permissão para depósito deste artigo no Repositório Institucional da UFOP. Número da licença: 4230720311201.-
Palavras-chave: dc.subjectAmbiguity-
Palavras-chave: dc.subjectContext-dependent overloading-
Palavras-chave: dc.subjectHaskell-
Título: dc.titleAmbiguity and constrained polymorphism.-
Aparece nas coleções:Repositório Institucional - UFOP

Não existem arquivos associados a este item.