Personal tools

User:ConradParker/InstantInsanity

From HaskellWiki

< User:ConradParker(Difference between revisions)
Jump to: navigation, search
(add link to draft PDF)
(update abstract)
Line 1: Line 1:
 
'''Type-Level Instant Insanity'''
 
'''Type-Level Instant Insanity'''
   
We illuminate some of the techniques used to perform computations in The Haskell Type System by presenting a complete type-level program.
+
<blockquote>
Programming at this level is often considered an obscure art with little
+
We illuminate some of the techniques used to perform computations in the Haskell
practical value, but it need not be so.
+
Type System by presenting a complete type-level program. Programming at this
We introduce constructs equivalent to list comprehensions, maps and filters
+
level is often considered an obscure art with little practical value, but it need not be so.
of conventional functional programming, and in so doing make clear the
+
</blockquote>
mechanical techniques required to construct programs in this manner.
+
Only after building an understanding of the syntactical oddities and
+
Familiarity with the syntax of the Haskell Type System is a prerequisite for
transformations involved in programming in The Haskell Type System do we consider the practical aspects of using these techniques in conventional Haskell programming.
+
understanding the details of general Haskell programming. What better way to
  +
build familiarity with something than to hack it to bits?
   
 
* http://seq.kfish.org/instant-insanity/instant-insanity.pdf (Draft)
 
* http://seq.kfish.org/instant-insanity/instant-insanity.pdf (Draft)

Revision as of 14:13, 5 September 2007

Type-Level Instant Insanity

We illuminate some of the techniques used to perform computations in the Haskell Type System by presenting a complete type-level program. Programming at this level is often considered an obscure art with little practical value, but it need not be so.

Familiarity with the syntax of the Haskell Type System is a prerequisite for understanding the details of general Haskell programming. What better way to build familiarity with something than to hack it to bits?