some haskell learnings.