Hiding module *exports*

Herbert Valerio Riedel hvr at gnu.org
Mon Oct 27 11:37:43 UTC 2014


On 2014-10-26 at 20:28:41 +0100, Tom Murphy wrote:

[...]

> I propose that instead, we're able to simply say what we mean:
>
>     module Foo hiding (Lockbox(MkLockbox), internalFunction) where
>
> I think its semantics are immediately clear to the reader.
>
> There's a little bit of bikeshedding that needs to happen (e.g. is "hiding
> (Foo(..))" sufficient to hide the type Foo and not just its constructors),
> but are people +1 on this? I've frequently wanted this behavior.

I'm generally +1 on this, and I even suggested that one myself some time
ago:

  http://www.haskell.org/pipermail/haskell-prime/2014-January/003910.html


Cheers,
  hvr


More information about the Glasgow-haskell-users mailing list