Hi Andrew,
> Also remember that evaluating an expression in Haskell is _really_
> hard!
Really? Looks pretty damn simple to me...
In that case I throw down the challenge of writing an interpetter that
takes a Haskell syntax tree and evaluates it :)
What is the value of show [] ? Remember that show ([] :: String) /=
show ([] :: [Bool), so I can't see how you can drop the types and keep
the semantics. I would love to write a Haskell interpretter which
didn't deal with types (crashing at runtime for ill-typed is fine) -
unfortunately I couldn't make it work because of this. If you figured
it out, please share!
Oh, yeah, well, definitely the hardest part is *parsing* Haskell. In
particular, the fact that layout exists makes this problem essentually
unsolvable.
I'd say the type checking was much harder. The problem of desugaring
is broad, but in most cases isn't that complex.
Thanks
Neil
_______________________________________________
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe