Proposal: Partitionable goes somewhere + containers instances

Henning Thielemann lemming
Mon Oct 7 14:35:41 UTC 2013


On Mon, 7 Oct 2013, Edward Kmett wrote:

> A rule of thumb that has served me well w.r.t exposing internal modules is to expose a Data.Foo.Internal but
> make it clear it is a very fragile interface.?
> Even by going to far as to say this module does not follow the PVP and that they should expect breaking
> changes to come fast and often. Users should only safely depend on it with minor-version specific bounds
> then. This ameliorates the concerns about how it ties your hands as an implementor.

A PVP compliant solution would be to divide 'containers' into 
'containers-internal' and 'containers'. The new package 
'containers-internal' exposes internal data structures, but increases 
version numbers at a higher rate than 'containers'. The package 
'containers' would only expose the public API and thus a more stable 
interface.




More information about the Libraries mailing list