[Haskell-cafe] Mixing internal functions and datatypes with externally available ones