Sunday web overview
Here’s an overview of some interesting web resources I’ve found recently:
First of all, I’ve found a great question on StackOverflow that outlines stages of mastering Haskell. According to it I’m somewhere in the beginner level.
I’ve encountered many interesting pages in the Haskell Wiki.
First of all, there is a great FAQ. I wish I found it earlier, it would save me a lot of time and effort and other’s effort as well, since I was asking some of these questions on #haskell channel.
There is a very short and nice introduction to I/O in Haskell. I’m already beyond that point in my Haskell education, but earlier it would have been useful.
A more in-depth tutorial called IO Inside. I’ve read some parts of it to clarify information from Real World Haskell.
A list of research papers about Haskell.
Tutorial on how to maintain laziness in Haskell.
A discussion of Monomorphism Restriction. I tried to read Haskell 2010 report to understand why the restriction exists, but I didn’t understand a thing.
There is a Debug.Trace module in Haskell that allows to trace function calls as they happen. I guess it’s not the same as log4j from Java, but I think it will come in handy.
An old post by Daniel Spiewak gives a very brief overview of Hindley-Milner type system. It is presented in Scala, but AFAIK Haskell uses the same. I found the comments below the post to be very insightful. Actually the whole blog by Daniel is very interesting, but it looks like a difficult read.
There is a classical book by Simon Peyton Jones called “The Implementation of Functional Programming Languages”. It’s from 1987 so it’s rather old (hence classical). In fact the Haskell standard wasn’t even defined back then (not mentioning any Haskell compiler). The book is available online for free.
And last but not least, the Tokyo Schönfinkel Appreciation Club.