File Download
  Links for fulltext
     (May Require Subscription)
Supplementary

Article: Kind inference for datatypes

TitleKind inference for datatypes
Authors
Issue Date2020
PublisherAssociation for Computing Machinery: Open Access Journals. The Journal's web site is located at https://dl.acm.org/journal/pacmpl
Citation
Proceedings of the ACM on Programming Languages, 2020, v. 4, p. article no. 53 How to Cite?
AbstractIn recent years, languages like Haskell have seen a dramatic surge of new features that significantly extends the expressive power of their type systems. With these features, the challenge of kind inference for datatype declarations has presented itself and become a worthy research problem on its own. This paper studies kind inference for datatypes. Inspired by previous research on type-inference, we offer declarative specifications for what datatype declarations should be accepted, both for Haskell98 and for a more advanced system we call PolyKinds, based on the extensions in modern Haskell, including a limited form of dependent types. We believe these formulations to be novel and without precedent, even for Haskell98. These specifications are complemented with implementable algorithmic versions. We study soundness, completeness and the existence of principal kinds in these systems, proving the properties where they hold. This work can serve as a guide both to language designers who wish to formalize their datatype declarations and also to implementors keen to have principled inference of principal types.
Persistent Identifierhttp://hdl.handle.net/10722/301196
ISSN
2020 SCImago Journal Rankings: 0.362
ISI Accession Number ID

 

DC FieldValueLanguage
dc.contributor.authorXIE, N-
dc.contributor.authorEisenberg, RA-
dc.contributor.authorDos Santos Oliveira, BCDS-
dc.date.accessioned2021-07-27T08:07:33Z-
dc.date.available2021-07-27T08:07:33Z-
dc.date.issued2020-
dc.identifier.citationProceedings of the ACM on Programming Languages, 2020, v. 4, p. article no. 53-
dc.identifier.issn2475-1421-
dc.identifier.urihttp://hdl.handle.net/10722/301196-
dc.description.abstractIn recent years, languages like Haskell have seen a dramatic surge of new features that significantly extends the expressive power of their type systems. With these features, the challenge of kind inference for datatype declarations has presented itself and become a worthy research problem on its own. This paper studies kind inference for datatypes. Inspired by previous research on type-inference, we offer declarative specifications for what datatype declarations should be accepted, both for Haskell98 and for a more advanced system we call PolyKinds, based on the extensions in modern Haskell, including a limited form of dependent types. We believe these formulations to be novel and without precedent, even for Haskell98. These specifications are complemented with implementable algorithmic versions. We study soundness, completeness and the existence of principal kinds in these systems, proving the properties where they hold. This work can serve as a guide both to language designers who wish to formalize their datatype declarations and also to implementors keen to have principled inference of principal types.-
dc.languageeng-
dc.publisherAssociation for Computing Machinery: Open Access Journals. The Journal's web site is located at https://dl.acm.org/journal/pacmpl-
dc.relation.ispartofProceedings of the ACM on Programming Languages-
dc.rightsThis work is licensed under a Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International License.-
dc.titleKind inference for datatypes-
dc.typeArticle-
dc.identifier.emailDos Santos Oliveira, BCDS: bruno@cs.hku.hk-
dc.identifier.authorityDos Santos Oliveira, BCDS=rp01786-
dc.description.naturepublished_or_final_version-
dc.identifier.doi10.1145/3371121-
dc.identifier.scopuseid_2-s2.0-85089767005-
dc.identifier.hkuros323734-
dc.identifier.volume4-
dc.identifier.spagearticle no. 53-
dc.identifier.epagearticle no. 53-
dc.identifier.isiWOS:000685202400054-
dc.publisher.placeUnited States-

Export via OAI-PMH Interface in XML Formats


OR


Export to Other Non-XML Formats