[Haskell-cafe] space leaks and optimizations