[Haskell-cafe] Module visibility of data type constructors
stefan at cs.uu.nl
Sun Nov 5 15:51:24 EST 2006
> module Foo (Bar) where
> data Bar = Bar
> In ghc this allows me to use Bar, the type constructor, in another
> module, although it shouldn't be visible outside Foo. On the other
> hand, if I change Bar's definition as:
> data Bar = Baz
> Baz isn't visible outside Foo.
On terminology: in
data T = D
T is called a type constructor and is called a *data* constructor.
More information about the Haskell-Cafe