A type system for context-dependent overloading.
Autor(a) principal: | |
---|---|
Data de Publicação: | 1998 |
Outros Autores: | |
Tipo de documento: | Artigo |
Idioma: | eng |
Título da fonte: | Repositório Institucional da UFOP |
Texto Completo: | http://www.repositorio.ufop.br/handle/123456789/4379 https://doi.org/10.1016/S1571-0661(05)80229-4 |
Resumo: | This article presents a type system for context-dependent overloading, based on the notion of constrained types. These are types constrained by the definition of functions or constants of given types. This notion supports both overloading and a form of subtyping, and is related to Haskell type classes [11,2], System O [7] and other systems with constrained types. We study an extension of the Damas-Milner system [4,1] with constrained types. The inference system presented uses a context-dependent overloading policy, which is specified by means of a predicate used in a single inference rule. The idea simplifies the treatment of overloading, enables the simplification of inferred types (by means of class type annotations), and is adequate for use in a type system with higher-order types. |
id |
UFOP_c0f3790ddb9c2103a4640997fa8818d6 |
---|---|
oai_identifier_str |
oai:localhost:123456789/4379 |
network_acronym_str |
UFOP |
network_name_str |
Repositório Institucional da UFOP |
repository_id_str |
3233 |
spelling |
Figueiredo, Lucília Camarão deFigueiredo, Carlos Camarão de2015-01-26T11:31:43Z2015-01-26T11:31:43Z1998FIGUEIREDO, L. C. de; FIGUEIREDO, C. C. de. A type system for context-dependent overloading. Electronic Notes in Theoretical Computer Science, New Orleans, v. 14, p. 52-61, 1998. Disponível em: <http://www.sciencedirect.com/science/article/pii/S1571066105802294#>. Acesso em: 23 jan. 2015.1571-0661http://www.repositorio.ufop.br/handle/123456789/4379https://doi.org/10.1016/S1571-0661(05)80229-4This article presents a type system for context-dependent overloading, based on the notion of constrained types. These are types constrained by the definition of functions or constants of given types. This notion supports both overloading and a form of subtyping, and is related to Haskell type classes [11,2], System O [7] and other systems with constrained types. We study an extension of the Damas-Milner system [4,1] with constrained types. The inference system presented uses a context-dependent overloading policy, which is specified by means of a predicate used in a single inference rule. The idea simplifies the treatment of overloading, enables the simplification of inferred types (by means of class type annotations), and is adequate for use in a type system with higher-order types.A type system for context-dependent overloading.info:eu-repo/semantics/publishedVersioninfo:eu-repo/semantics/articleThis article is published under the terms of the Creative Commons Attribution-NonCommercial-No Derivatives License (CC BY NC ND). For non-commercial purposes you may distribute and copy the article and include it in a collective work (such as an anthology), provided you do not alter or modify the article, without permission from Elsevier. The original work must always be appropriately credited. Fonte: Elsevier <http://www.copyright.com/rlQuickPrice.do?operation=refreshPrice#formTop>. Acesso em: 23 jan. 2015.info:eu-repo/semantics/openAccessengreponame:Repositório Institucional da UFOPinstname:Universidade Federal de Ouro Preto (UFOP)instacron:UFOPLICENSElicense.txtlicense.txttext/plain; charset=utf-82636http://www.repositorio.ufop.br/bitstream/123456789/4379/2/license.txtc2ffdd99e58acf69202dff00d361f23aMD52ORIGINALARTIGO_TypeSystemContext.pdfARTIGO_TypeSystemContext.pdfapplication/pdf630288http://www.repositorio.ufop.br/bitstream/123456789/4379/1/ARTIGO_TypeSystemContext.pdfdc6c75e6ca945bd49f8a0051a9329220MD51123456789/43792019-06-12 13:11:14.137oai:localhost:123456789/4379PGh0bWw+Cjxib2R5Pgo8ZGl2IGFsaWduPSJqdXN0aWZ5Ij48c3Ryb25nPkxpY2VuJmNjZWRpbDthIGRvIFJlcG9zaXQmb2FjdXRlO3JpbyBJbnN0aXR1Y2lvbmFsIGRhIFVuaXZlcnNpZGFkZSBGZWRlcmFsIGRlIE91cm8gUHJldG88L3N0cm9uZz4KICA8YnI+CiAgPGJyPgogIEFvIGNvbmNvcmRhciBjb20gZXN0YSBsaWNlbiZjY2VkaWw7YSwgdm9jJmVjaXJjOyhzKSBhdXRvcihlcykgb3UgdGl0dWxhcihlcykgZG9zIGRpcmVpdG9zIGF1dG9yYWlzIGRhIG9icmEgYXF1aSBkZXNjcml0YSBjb25jZWRlKG0pICZhZ3JhdmU7CiAgPGJyPgogIFVuaXZlcnNpZGFkZSBGZWRlcmFsIGRlIE91cm8gUHJldG8gKFVGT1ApIGdlc3RvcmEgZG8gUmVwb3NpdCZvYWN1dGU7cmlvIEluc3RpdHVjaW9uYWwgZGEgVW5pdmVyc2lkYWRlIEZlZGVyYWwgZGUgT3VybyBQcmV0bwogIDxicj4KICAoUkktVUZPUCksIG8gZGlyZWl0byBuJmF0aWxkZTtvLWV4Y2x1c2l2byBkZSByZXByb2R1emlyLCBjb252ZXJ0ZXIgKGNvbW8gZGVmaW5pZG8gYWJhaXhvKSBlL291IGRpc3RyaWJ1aXIgbyBkb2N1bWVudG8gZGVwb3NpdGFkbwogIDxicj4KICBlbSBmb3JtYXRvIGltcHJlc3NvLCBlbGV0ciZvY2lyYztuaWNvIG91IGVtIHF1YWxxdWVyIG91dHJvIG1laW8uCiAgPGJyPgogIDxicj4KICBWb2MmZWNpcmM7KHMpIGNvbmNvcmRhKG0pIHF1ZSBhIFVGT1AsIGdlc3RvcmEgZG8gUkktVUZPUCwgcG9kZSwgc2VtIGFsdGVyYXIgbyBjb250ZSZ1YWN1dGU7ZG8sIGNvbnZlcnRlciBvIGFycXVpdm8gZGVwb3NpdGFkbyBhCiAgPGJyPgogIHF1YWxxdWVyIG1laW8gb3UgZm9ybWF0byBjb20gZmlucyBkZSBwcmVzZXJ2YSZjY2VkaWw7JmF0aWxkZTtvLiBWb2MmZWNpcmM7KHMpIHRhbWImZWFjdXRlO20gY29uY29yZGEobSkgcXVlIGEgVUZPUCwgZ2VzdG9yYSBkbyBSSS1VRk9QLCBwb2RlCiAgPGJyPgogIG1hbnRlciBtYWlzIGRlIHVtYSBjJm9hY3V0ZTtwaWEgZGVzdGUgZGVwJm9hY3V0ZTtzaXRvIHBhcmEgZmlucyBkZSBzZWd1cmFuJmNjZWRpbDthLCA8ZW0+YmFjay11cDwvZW0+IGUvb3UgcHJlc2VydmEmY2NlZGlsOyZhdGlsZGU7by4KICA8YnI+CiAgPGJyPgogIFZvYyZlY2lyYzsocykgZGVjbGFyYShtKSBxdWUgYSBhcHJlc2VudGEmY2NlZGlsOyZhdGlsZGU7byBkbyBzZXUgdHJhYmFsaG8gJmVhY3V0ZTsgb3JpZ2luYWwgZSBxdWUgdm9jJmVjaXJjOyhzKSBwb2RlKG0pIGNvbmNlZGVyIG9zIGRpcmVpdG9zIGNvbnRpZG9zCiAgPGJyPgogIG5lc3RhIGxpY2VuJmNjZWRpbDthLiBWb2MmZWNpcmM7KHMpIHRhbWImZWFjdXRlO20gZGVjbGFyYShtKSBxdWUgbyBlbnZpbyAmZWFjdXRlOyBkZSBzZXUgY29uaGVjaW1lbnRvIGUgbiZhdGlsZGU7byBpbmZyaW5nZSBvcyBkaXJlaXRvcyBhdXRvcmFpcyBkZSBvdXRyYQogIDxicj4KICBwZXNzb2Egb3UgaW5zdGl0dWkmY2NlZGlsOyZhdGlsZGU7by4gQ2FzbyBvIGRvY3VtZW50byBhIHNlciBkZXBvc2l0YWRvIGNvbnRlbmhhIG1hdGVyaWFsIHBhcmEgbyBxdWFsIHZvYyZlY2lyYzsocykgbiZhdGlsZGU7byBkZXQmZWFjdXRlO20gYSB0aXR1bGFyaWRhZGUKICA8YnI+CiAgZG9zIGRpcmVpdG9zIGF1dG9yYWlzLCB2b2MmZWNpcmM7KHMpIGRlY2xhcmEobSkgcXVlIG9idGV2ZSBhIHBlcm1pc3MmYXRpbGRlO28gaXJyZXN0cml0YSBkbyB0aXR1bGFyIGRvcyBkaXJlaXRvcyBhdXRvcmFpcyBkZSBjb25jZWRlciAmYWdyYXZlOwogIDxicj4KICBVRk9QLCBnZXN0b3JhIGRvIFJJLVVGT1Agb3MgZGlyZWl0b3MgcmVxdWVyaWRvcyBwb3IgZXN0YSBsaWNlbiZjY2VkaWw7YSBlIHF1ZSBvcyBtYXRlcmlhaXMgZGUgcHJvcHJpZWRhZGUgZGUgdGVyY2Vpcm9zLCBlc3QmYXRpbGRlO28KICA8YnI+CiAgZGV2aWRhbWVudGUgaWRlbnRpZmljYWRvcyBlIHJlY29uaGVjaWRvcyBubyB0ZXh0byBvdSBjb250ZSZ1YWN1dGU7ZG8gZGEgYXByZXNlbnRhJmNjZWRpbDsmYXRpbGRlO28uCiAgPGJyPgogIDxicj4KICBDQVNPIE8gVFJBQkFMSE8gREVQT1NJVEFETyBURU5IQSBTSURPIEZJTkFOQ0lBRE8gT1UgQVBPSUFETyBQT1IgVU0gJk9hY3V0ZTtSRyZBdGlsZGU7TywgUVVFIE4mQXRpbGRlO08gQSBJTlNUSVRVSSZDY2VkaWw7JkF0aWxkZTtPIERFU1RFCiAgPGJyPgogIFJFU1BPU0lUJk9hY3V0ZTtSSU86IFZPQyZFY2lyYzsgREVDTEFSQSBURVIgQ1VNUFJJRE8gVE9ET1MgT1MgRElSRUlUT1MgREUgUkVWSVMmQXRpbGRlO08gRSBRVUFJU1FVRVIgT1VUUkFTIE9CUklHQSZDY2VkaWw7Jk90aWxkZTtFUwogIDxicj4KICBSRVFVRVJJREFTIFBFTE8gQ09OVFJBVE8gT1UgQUNPUkRPLiAKICA8YnI+CiAgPGJyPgogIE8gcmVwb3NpdCZvYWN1dGU7cmlvIGlkZW50aWZpY2FyJmFhY3V0ZTsgY2xhcmFtZW50ZSBvIHNldShzKSBub21lKHMpIGNvbW8gYXV0b3IoZXMpIG91IHRpdHVsYXIoZXMpIGRvIGRpcmVpdG8gZGUgYXV0b3IoZXMpIGRvIGRvY3VtZW50bwogIDxicj4KICBzdWJtZXRpZG8gZSBkZWNsYXJhIHF1ZSBuJmF0aWxkZTtvIGZhciZhYWN1dGU7IHF1YWxxdWVyIGFsdGVyYSZjY2VkaWw7JmF0aWxkZTtvIGFsJmVhY3V0ZTttIGRhcyBwZXJtaXRpZGFzIHBvciBlc3RhIGxpY2VuJmNjZWRpbDthLjwvcD4KPC9kaXY+CjwvYm9keT4KPC9odG1sPgo=Repositório InstitucionalPUBhttp://www.repositorio.ufop.br/oai/requestrepositorio@ufop.edu.bropendoar:32332019-06-12T17:11:14Repositório Institucional da UFOP - Universidade Federal de Ouro Preto (UFOP)false |
dc.title.pt_BR.fl_str_mv |
A type system for context-dependent overloading. |
title |
A type system for context-dependent overloading. |
spellingShingle |
A type system for context-dependent overloading. Figueiredo, Lucília Camarão de |
title_short |
A type system for context-dependent overloading. |
title_full |
A type system for context-dependent overloading. |
title_fullStr |
A type system for context-dependent overloading. |
title_full_unstemmed |
A type system for context-dependent overloading. |
title_sort |
A type system for context-dependent overloading. |
author |
Figueiredo, Lucília Camarão de |
author_facet |
Figueiredo, Lucília Camarão de Figueiredo, Carlos Camarão de |
author_role |
author |
author2 |
Figueiredo, Carlos Camarão de |
author2_role |
author |
dc.contributor.author.fl_str_mv |
Figueiredo, Lucília Camarão de Figueiredo, Carlos Camarão de |
description |
This article presents a type system for context-dependent overloading, based on the notion of constrained types. These are types constrained by the definition of functions or constants of given types. This notion supports both overloading and a form of subtyping, and is related to Haskell type classes [11,2], System O [7] and other systems with constrained types. We study an extension of the Damas-Milner system [4,1] with constrained types. The inference system presented uses a context-dependent overloading policy, which is specified by means of a predicate used in a single inference rule. The idea simplifies the treatment of overloading, enables the simplification of inferred types (by means of class type annotations), and is adequate for use in a type system with higher-order types. |
publishDate |
1998 |
dc.date.issued.fl_str_mv |
1998 |
dc.date.accessioned.fl_str_mv |
2015-01-26T11:31:43Z |
dc.date.available.fl_str_mv |
2015-01-26T11:31:43Z |
dc.type.status.fl_str_mv |
info:eu-repo/semantics/publishedVersion |
dc.type.driver.fl_str_mv |
info:eu-repo/semantics/article |
format |
article |
status_str |
publishedVersion |
dc.identifier.citation.fl_str_mv |
FIGUEIREDO, L. C. de; FIGUEIREDO, C. C. de. A type system for context-dependent overloading. Electronic Notes in Theoretical Computer Science, New Orleans, v. 14, p. 52-61, 1998. Disponível em: <http://www.sciencedirect.com/science/article/pii/S1571066105802294#>. Acesso em: 23 jan. 2015. |
dc.identifier.uri.fl_str_mv |
http://www.repositorio.ufop.br/handle/123456789/4379 |
dc.identifier.issn.none.fl_str_mv |
1571-0661 |
dc.identifier.doi.none.fl_str_mv |
https://doi.org/10.1016/S1571-0661(05)80229-4 |
identifier_str_mv |
FIGUEIREDO, L. C. de; FIGUEIREDO, C. C. de. A type system for context-dependent overloading. Electronic Notes in Theoretical Computer Science, New Orleans, v. 14, p. 52-61, 1998. Disponível em: <http://www.sciencedirect.com/science/article/pii/S1571066105802294#>. Acesso em: 23 jan. 2015. 1571-0661 |
url |
http://www.repositorio.ufop.br/handle/123456789/4379 https://doi.org/10.1016/S1571-0661(05)80229-4 |
dc.language.iso.fl_str_mv |
eng |
language |
eng |
dc.rights.driver.fl_str_mv |
info:eu-repo/semantics/openAccess |
eu_rights_str_mv |
openAccess |
dc.source.none.fl_str_mv |
reponame:Repositório Institucional da UFOP instname:Universidade Federal de Ouro Preto (UFOP) instacron:UFOP |
instname_str |
Universidade Federal de Ouro Preto (UFOP) |
instacron_str |
UFOP |
institution |
UFOP |
reponame_str |
Repositório Institucional da UFOP |
collection |
Repositório Institucional da UFOP |
bitstream.url.fl_str_mv |
http://www.repositorio.ufop.br/bitstream/123456789/4379/2/license.txt http://www.repositorio.ufop.br/bitstream/123456789/4379/1/ARTIGO_TypeSystemContext.pdf |
bitstream.checksum.fl_str_mv |
c2ffdd99e58acf69202dff00d361f23a dc6c75e6ca945bd49f8a0051a9329220 |
bitstream.checksumAlgorithm.fl_str_mv |
MD5 MD5 |
repository.name.fl_str_mv |
Repositório Institucional da UFOP - Universidade Federal de Ouro Preto (UFOP) |
repository.mail.fl_str_mv |
repositorio@ufop.edu.br |
_version_ |
1801685709087571968 |