Various Haskell odds and ends...