File Download
There are no files associated with this item.
Links for fulltext
(May Require Subscription)
- Publisher Website: 10.1007/978-3-662-54434-1_1
- Scopus: eid_2-s2.0-85018708160
- WOS: WOS:000681702400001
Supplementary
- Citations:
- Appears in Collections:
Conference Paper: Disjoint Polymorphism
Title | Disjoint Polymorphism |
---|---|
Authors | |
Keywords | Type Variable Intersection Type Record Type Algorithmic Rule Subtyping Relation |
Issue Date | 2017 |
Publisher | Springer. |
Citation | Proceedings of the 26th European Symposium on Programming (ESOP 2017): Programming Languages and Systems, Uppsala, Sweden, 22–29 April 2017, p. 1-28 How to Cite? |
Abstract | The combination of intersection types, a merge operator and parametric polymorphism enables important applications for programming. However, such combination makes it hard to achieve the desirable property of a coherent semantics: all valid reductions for the same expression should have the same value. Recent work proposed disjoint intersections types as a means to ensure coherence in a simply typed setting. However, the addition of parametric polymorphism was not studied. This paper presents Open image in new window: a calculus with disjoint intersection types, a variant of parametric polymorphism and a merge operator. Open image in new window is both type-safe and coherent. The key difficult occurs in an intersection type, it is not statically known whether the instantiated type will be disjoint to other components of the intersection. To address this problem we propose disjoint polymorphism: a constrained form of parametric polymorphism, which allows disjointness constraints for type variables. With disjoint polymorphism the calculus remains very flexible in terms of programs that can be written, while retaining coherence. |
Description | Part of the European Joint Conferences on Theory and Practice of Software, ETAPS 2017 |
Persistent Identifier | http://hdl.handle.net/10722/301304 |
ISBN | |
ISI Accession Number ID | |
Series/Report no. | Lecture Notes in Computer Science (LNCS) ; v. 10201 |
DC Field | Value | Language |
---|---|---|
dc.contributor.author | Alpuim, J | - |
dc.contributor.author | Dos Santos Oliveira, BC | - |
dc.contributor.author | Shi, Z | - |
dc.date.accessioned | 2021-07-27T08:09:09Z | - |
dc.date.available | 2021-07-27T08:09:09Z | - |
dc.date.issued | 2017 | - |
dc.identifier.citation | Proceedings of the 26th European Symposium on Programming (ESOP 2017): Programming Languages and Systems, Uppsala, Sweden, 22–29 April 2017, p. 1-28 | - |
dc.identifier.isbn | 9783662544334 | - |
dc.identifier.uri | http://hdl.handle.net/10722/301304 | - |
dc.description | Part of the European Joint Conferences on Theory and Practice of Software, ETAPS 2017 | - |
dc.description.abstract | The combination of intersection types, a merge operator and parametric polymorphism enables important applications for programming. However, such combination makes it hard to achieve the desirable property of a coherent semantics: all valid reductions for the same expression should have the same value. Recent work proposed disjoint intersections types as a means to ensure coherence in a simply typed setting. However, the addition of parametric polymorphism was not studied. This paper presents Open image in new window: a calculus with disjoint intersection types, a variant of parametric polymorphism and a merge operator. Open image in new window is both type-safe and coherent. The key difficult occurs in an intersection type, it is not statically known whether the instantiated type will be disjoint to other components of the intersection. To address this problem we propose disjoint polymorphism: a constrained form of parametric polymorphism, which allows disjointness constraints for type variables. With disjoint polymorphism the calculus remains very flexible in terms of programs that can be written, while retaining coherence. | - |
dc.language | eng | - |
dc.publisher | Springer. | - |
dc.relation.ispartof | Proceedings of the 26th European Symposium on Programming (ESOP 2017): Programming Languages and Systems | - |
dc.relation.ispartofseries | Lecture Notes in Computer Science (LNCS) ; v. 10201 | - |
dc.subject | Type Variable | - |
dc.subject | Intersection Type | - |
dc.subject | Record Type | - |
dc.subject | Algorithmic Rule | - |
dc.subject | Subtyping Relation | - |
dc.title | Disjoint Polymorphism | - |
dc.type | Conference_Paper | - |
dc.identifier.email | Alpuim, J: alpuim@cs.hku.hk | - |
dc.identifier.email | Dos Santos Oliveira, BC: bruno@cs.hku.hk | - |
dc.identifier.authority | Dos Santos Oliveira, BC=rp01786 | - |
dc.description.nature | link_to_subscribed_fulltext | - |
dc.identifier.doi | 10.1007/978-3-662-54434-1_1 | - |
dc.identifier.scopus | eid_2-s2.0-85018708160 | - |
dc.identifier.hkuros | 323716 | - |
dc.identifier.spage | 1 | - |
dc.identifier.epage | 28 | - |
dc.identifier.isi | WOS:000681702400001 | - |
dc.publisher.place | Berlin | - |