[Haskell-cafe] modules as implicit data structures