[Haskell-beginners] Type classes and synonyms
Brandon S. Allbery KF8NH
allbery at ece.cmu.edu
Sun Nov 22 10:45:04 EST 2009
On Nov 22, 2009, at 10:32 , pbrowne wrote:
> On Sat, Nov 21, 2009 at 21:08 Felipe Lessa wrote:
>> Most definitions, if not all, are just the corresponding free
>> theorems
>> (meaning roughly that the definition follows from the type
>> because that's the only definition that doesn't have
>> undefined's).
>
> Question: Is it correct to paraphrase Felipe's description as follows:
> In Haskell the *term theorems for free* means roughly that the
> definition of a class, instance or a function follows from the
> supplied
> types because they are the only types that don’t have undefined
> argumens
> or undefined return types.
Pretty much. It's not specific to Haskell, either; it's a result of
the Curry-Howard correspondence between programs and mathematical
proofs.
http://homepages.inf.ed.ac.uk/wadler/papers/free/free.ps is the
canonical paper on deriving free theorems from Hindley-Milner type
systems.
--
brandon s. allbery [solaris,freebsd,perl,pugs,haskell] allbery at kf8nh.com
system administrator [openafs,heimdal,too many hats] allbery at ece.cmu.edu
electrical and computer engineering, carnegie mellon university KF8NH
-------------- next part --------------
A non-text attachment was scrubbed...
Name: PGP.sig
Type: application/pgp-signature
Size: 195 bytes
Desc: This is a digitally signed message part
Url : http://www.haskell.org/pipermail/beginners/attachments/20091122/3964ba3f/PGP.bin
More information about the Beginners
mailing list