[Haskell-cafe] Make this code more idiomatic?