[Haskell-cafe] Really need some help understanding a solution