Adding Fixed Point Data Types to base

Andrew Martin andrew.thaddeus at
Sun Oct 16 20:10:37 UTC 2016

Like I said, I don't like doing things like this for the reasons that you
would expect. I don't like that it breaks the PVP, makes running your test
suite more difficult, and makes your haddocks not include information that
might be available. But to get back to the original proposal, what are your
thoughts on providing Free, Cofree, and Fix in base? I gather from your
previous comment that you would prefer anything to conditional instances,
but do you find that these recursive data types are commonly used enough to
merit inclusion in base?

On Sun, Oct 16, 2016 at 3:34 PM, Henning Thielemann <
lemming at> wrote:

> On Sun, 16 Oct 2016, Andrew Martin wrote:
> Thanks for weighing in. It is possible to use cabal flags + CPP to work
>> around this, although I don't like doing that for the reasons you would
>> expect. I'm also not typically comfortable opening up an issue to ask a
>> package maintainer to add a flag to enable conditional dependencies for
>> instances.
> Conditionally compiling instances into a package is not an option. If
> another package imports a certain version of your package it can expect the
> availability of all instances. There is no other way for a package to
> assert certain instances other than specifying the package version.

-Andrew Thaddeus Martin
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <>

More information about the Libraries mailing list