Modules and their explicit export lists (are an annoyance)

Roman Beslik beroal at
Sat Jun 19 16:29:54 EDT 2010

Hi, Christian. Here is my humble and somewhat vague thoughts. I think 
that export list is reasonable for commonly used and stable (ancient) 
library. Export list is a contract between library's author and user. 
Though current Haskell rules force author to have one and only one 
contract with all the people in the world. E.g. in law there is no such 
restriction. Assuming that (using/not using) an unstable function in the 
library is responsibility of library's user (not author), there may be:
- declaration "import hidden" for importing everything;
- compiler option for banning "import hidden";
- several export lists (in separate files) for different type of users.
On 19.06.10 21:38, Christian Höner zu Siederdissen wrote:
> Hi everybody,
> I'd like some input on other peoples' thoughts on this. Recently, I
> played around with a library that uses an explicit export list.
>> 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?
Best regards,
   Roman Beslik.

More information about the Glasgow-haskell-users mailing list