[Haskell-cafe] an advanced foldification problem