A new approach to generic functional programming

R Hinze - Proceedings of the 27th ACM SIGPLAN-SIGACT …, 2000 - dl.acm.org
This paper describes a new approach to generic functional programming, which allows us to
define functions generically for all datatypes expressible in Haskell. A generic function is …

Once upon a polymorphic type

K Wansbrough, S Peyton Jones - … of the 26th ACM SIGPLAN-SIGACT …, 1999 - dl.acm.org
We present a sound type-based'usage analysis' for a realistic lazy functional language.
Accurate information on the usage of program subexpressions in a lazy functional language …

Faking it simulating dependent types in haskell

C McBride - Journal of functional programming, 2002 - cambridge.org
Dependent types reflect the fact that validity of data is often a relative notion by allowing prior
data to affect the types of subsequent data. Not only does this make for a precise type …

Putting curry-howard to work

T Sheard - Proceedings of the 2005 ACM SIGPLAN workshop on …, 2005 - dl.acm.org
The Curry-Howard isomorphism states that types are propositions and that programs are
proofs. This allows programmers to state and enforce invariants of programs by using types …

Functional programming with overloading and higher-order polymorphism

MP Jones - … Programming: First International Spring School on …, 1995 - Springer
Abstract The Hindley/Milner type system has been widely adopted as a basis for statically
typed functional languages. One of the main reasons for this is that it provides an elegant …

Some History of Functional Programming Languages: (Invited Talk)

DA Turner - International Symposium on Trends in Functional …, 2012 - Springer
LNCS 7829 - Some History of Functional Programming Languages Page 1 Some History of
Functional Programming Languages (Invited Talk) DA Turner University of Kent & Middlesex …

Type classes with existential types

K Läufer - Journal of Functional Programming, 1996 - cambridge.org
We argue that the novel combination of type classes and existential types in a single
language yields significant expressive power. We explore this combination in the context of …

Associated type synonyms

MMT Chakravarty, G Keller, SP Jones - ACM SIGPLAN Notices, 2005 - dl.acm.org
Haskell programmers often use a multi-parameter type class in which one or more type
parameters are functionally dependent on the first. Although such functional dependencies …

Parametricity and unboxing with unpointed types

J Launchbury, R Paterson - European Symposium on Programming, 1996 - Springer
In lazy functional languages,⊥ is typically an element of every type. While this provides
great flexibility, it also comes at a cost. In this paper we explore the consequences of …

Derivable type classes

R Hinze, SP Jones - Electronic notes in theoretical computer science, 2001 - Elsevier
Generic programming allows you to write a function once, and use it many times at different
types. A lot of good foundational work on generic programming has been done. The goal of …