Hasochism: the pleasure and pain of dependently typed haskell programming
Hasochism: the pleasure and pain of dependently typed haskell programming
复制标题
Hasochism:依赖类型 Haskell 编程的快乐和痛苦
DOI:
--
复制
发表时间:
2013
期刊:
影响因子:
--
通讯作者:
Conor McBride
中科院分区:
文献类型:
--
作者:
S. Lindley;Conor McBride
Haskell's type system has outgrown its Hindley-Milner roots to the extent that it now stretches to the basics of dependently typed programming. In this paper, we collate and classify techniques for programming with dependent types in Haskell, and contribute some new ones. In particular, through extended examples---merge-sort and rectangular tilings---we show how to exploit Haskell's constraint solver as a theorem prover, delivering code which, as Agda programmers, we envy. We explore the compromises involved in simulating variations on the theme of the dependent function space in an attempt to help programmers put dependent types to work, and to inform the evolving language design both of Haskell and of dependently typed languages more broadly.