On Sat, Jun 19, 2010 at 08:38:52PM +0200, Christian Höner zu Siederdissen wrote: > But the more important thing is, that it makes extending module > functionality a pain (eg. if a constructor is not exported using (..)).
I think this is another problem. Sure, without export lists you *currently* can't hide those constructors. However, languages like Java don't have export lists as well. Imagine if we could write this in Haskell: private data Foo a = Foo a (Foo (Either a a)) Now, about the exports lists: they are useful to hide internal functions. I have many modules where I define functions that are not interesting outside that module. Cheers, -- Felipe. _______________________________________________ Glasgow-haskell-users mailing list Glasgow-haskell-users@haskell.org http://www.haskell.org/mailman/listinfo/glasgow-haskell-users