In the book [The Little Lisper](http://rads.stackoverflow.com/amzn/click/0023397632), you implement a minimal Scheme in 10 Chapters that is capable of interpreting any chapter in the book. 

To me it seems you could do the same for a 'minimal subset of a typed language' to be self-bootstrapping. I'm trying to work out what is feasible.

To me the options are:

* Simply Typed Lambda Calculus
* System F
* Miranda
* Haskell subset

**Assumptions:**

* Note that I'm ignoring the GHC runtime elements like spineless tagless graph-interpreter

My question is: **What is the equivalent of the Little Lisper project in Haskell?**