My main issue with existing books and tutorials is that I'm left in the dark about the more interesting/advanced parts of Haskell.
Some of the areas I would like to have a better understanding:
- More advanced kinds of monads e.g. Logic, Continuation
- Monad Transformers
- Arrows
- Rank-N types
- GADTs
- Category theoretical ideas e.g. Bananas and Lenses
- Type derivatives and TypeClass abuse c.f. Conor McBride
- Control patterns like Iteratees, Generic Zippers c.f. Oleg Kiselyov, Chung-Chieh Shan
I have an intuitive grasp of the above, but to me Haskell is more about programming with types than anything functional.
On the practical side, it seems like Haskell excels as a language processor, and parsing/compilation would be a great way to explore how to structure certain kinds of applications (like web servers, graphics pipelines, etc).
Please don't make it too real-world, I already have bash ;)