Modules and their explicit export lists (are an annoyance)
aslatter at gmail.com
Sat Jun 19 14:46:49 EDT 2010
Is there a specific library you're having trouble with?
One reason library authors can prefer explicit export lists is that they can
hide implementation details, which can then make it easier to change in the
future without breaking the users of the library.
Cc'ing the haskell-cafe
On Jun 19, 2010 1:39 PM, "Christian Höner zu Siederdissen" <
choener at tbi.univie.ac.at> wrote:
I'd like some input on other peoples' thoughts on this. Recently, I
played around with a library that uses an explicit export list. While
there are reasons for having one:
- efficiencey (inlining in the module)
in practice, it seems to me that they are more annoying than useful. For
once, it would think that ghc should produce efficient good across
modules with -O / -O2 anyway.
But the more important thing is, that it makes extending module
functionality a pain (eg. if a constructor is not exported using (..)).
So, should I really fork a library just to be able to add a function?
Btw. there are libraries, where an explicit export list is used, that
export the right amount of information. For example, in 'vector' enough
is exported to allow you to extend unboxed vectors.
Glasgow-haskell-users mailing list
Glasgow-haskell-users at haskell.org
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the Glasgow-haskell-users