Static type systems strive to be richly expressive while still being simple enough for programmers to use. We describe an experiment that enriches Haskell's kind system with two features promoted from its type system: data types and polymorphism. The new system has a very good power-to-weight ratio: it offers a significant improvement in expressiveness, but, by re-using concepts that programmers are already familiar with, the system is easy to understand and implement.
%0 Conference Paper
%1 Yorgey2012Giving
%A Yorgey, Brent A.
%A Weirich, Stephanie
%A Cretin, Julien
%A Peyton Jones, Simon
%A Vytiniotis, Dimitrios
%A Magalh\ aes, José P.
%B Proceedings of the 8th ACM SIGPLAN workshop on Types in language design and implementation - TLDI '12
%C New York, NY, USA
%D 2012
%I ACM Press
%K 03b15-higher-order-logic-type-theory 68n18-functional-programming-and-lambda-calculus haskell
%P 53--66
%R 10.1145/2103786.2103795
%T Giving Haskell a promotion
%U http://dx.doi.org/10.1145/2103786.2103795
%X Static type systems strive to be richly expressive while still being simple enough for programmers to use. We describe an experiment that enriches Haskell's kind system with two features promoted from its type system: data types and polymorphism. The new system has a very good power-to-weight ratio: it offers a significant improvement in expressiveness, but, by re-using concepts that programmers are already familiar with, the system is easy to understand and implement.
%@ 9781450311205
@inproceedings{Yorgey2012Giving,
abstract = {{Static type systems strive to be richly expressive while still being simple enough for programmers to use. We describe an experiment that enriches Haskell's kind system with two features promoted from its type system: data types and polymorphism. The new system has a very good power-to-weight ratio: it offers a significant improvement in expressiveness, but, by re-using concepts that programmers are already familiar with, the system is easy to understand and implement.}},
added-at = {2019-03-01T00:11:50.000+0100},
address = {New York, NY, USA},
author = {Yorgey, Brent A. and Weirich, Stephanie and Cretin, Julien and Peyton Jones, Simon and Vytiniotis, Dimitrios and Magalh\ {a}es, Jos\'{e} P.},
biburl = {https://www.bibsonomy.org/bibtex/20f3b2813dd28c701a2bdbba96e87c602/gdmcbain},
booktitle = {Proceedings of the 8th ACM SIGPLAN workshop on Types in language design and implementation - TLDI '12},
citeulike-article-id = {12475145},
citeulike-attachment-1 = {tldi12.pdf; /pdf/user/gdmcbain/article/12475145/1138471/tldi12.pdf; 630a1d48c3d67249694b607a7e2c8090abefdf25},
citeulike-linkout-0 = {http://portal.acm.org/citation.cfm?id=2103795},
citeulike-linkout-1 = {http://dx.doi.org/10.1145/2103786.2103795},
doi = {10.1145/2103786.2103795},
file = {tldi12.pdf},
interhash = {8084ef37f0a06a55a928310db44273a0},
intrahash = {0f3b2813dd28c701a2bdbba96e87c602},
isbn = {9781450311205},
keywords = {03b15-higher-order-logic-type-theory 68n18-functional-programming-and-lambda-calculus haskell},
location = {Philadelphia, Pennsylvania, USA},
pages = {53--66},
posted-at = {2018-06-06 07:56:57},
priority = {2},
publisher = {ACM Press},
series = {TLDI '12},
timestamp = {2019-03-01T00:11:50.000+0100},
title = {{Giving Haskell a promotion}},
url = {http://dx.doi.org/10.1145/2103786.2103795},
year = 2012
}