[Haskell-cafe] How to do this in FP way?