[Haskell-cafe] RFC: functor-classes-compat

Oleg Grenrus oleg.grenrus at iki.fi
Tue Dec 13 19:38:07 UTC 2016



On 13.12.2016 21:24, David Feuer wrote:
> On Dec 13, 2016 1:26 PM, "Oleg Grenrus" <oleg.grenrus at iki.fi
> <mailto:oleg.grenrus at iki.fi>> wrote:
>
>
>     I'm not sure we want `transformers`  to depend on `containers` either,
>     not even mentioning `vector` and `unordered-containers`. Also
>     there are
>     people stuck with `transformers-0.4` (GHC 7.10).
>
>
> Good point, although practically speaking, containers currently
> *can't* depend on transformers, because transformers is not currently
> a GHC boot package. There'll probably be room for your compat package
> for a while, but you'll have to chase those bounds :-/.
>
>
transformers *is* boot package, `ghc` package depends on transformers
directly (since GHC 7.6):

https://ghc.haskell.org/trac/ghc/wiki/Commentary/Libraries/VersionHistory

$ ghc-pkg describe ghc
...
depends:
    array-0.5.1.1 base-4.9.0.0 binary-0.8.3.0 bytestring-0.10.8.1
    containers-0.5.7.1 directory-1.2.6.2 filepath-1.4.1.0
    ghc-boot-8.0.1 ghci-8.0.1 hoopl-3.10.2.1 hpc-0.6.0.3
    process-1.4.2.0 template-haskell-2.11.0.0 time-1.6.0.1
    transformers-0.5.2.0 unix-2.7.2.0

>     >     Current implementations are naive, but more obviously correct.
>     >
>     > More than what?
>
>     It seems that implementation for Data.Map is indeed "check size,
>     compare
>     lists", but e.g for vector it uses streaming framework to make things
>     fuse, I still use "check size, compare lists" approach.
>
>
> I believe the only containers structures with non-boring instances of
> any of those classes are Data.IntMap, Data.IntSet, and Data.Tree.
>
IntSet is :: *

> Side question: why doesn't Read1 have the ReadPrec-based methods that
> Read does?

I have been wondering the same

-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 819 bytes
Desc: OpenPGP digital signature
URL: <http://mail.haskell.org/pipermail/haskell-cafe/attachments/20161213/bfe43e8a/attachment.sig>


More information about the Haskell-Cafe mailing list