[Haskell-cafe] ANN: containers-0.5.11.0

Oliver Charles ollie at ocharles.org.uk
Tue Jan 23 20:41:26 UTC 2018


Lots of goodies here! Thank you for all your hard-work, everyone!

On Tue, Jan 23, 2018 at 8:19 PM, David Feuer <david.feuer at gmail.com> wrote:

> We have just released containers version 0.5.11.0. This is the first
> release since Matt Renaud joined the maintenance team. Matt has
> focused on documentation, code quality, and testing, and made some
> substantial contributions in these areas.
>
> This release comes with quite a few new functions and instances,
> written by quite a few different contributors. It also includes a
> complete overhaul of the sorting machinery in Data.Sequence thanks to
> Donnacha Oisín Kidney. And Matt Renaud has launched a brand new set of
> tutorial documentation at
> https://haskell-containers.readthedocs.io/en/latest/
>
> Many thanks to all the contributors who made this release possible!
> The complete changelog can be found below.
>
> David Feuer
> Matt Renaud
> Wren Romano
>
>
> New functions and class instances
>
> * Add a `MonadFix` instance for `Data.Sequence`.
>
> * Add a `MonadFix` instance for `Data.Tree`.
>
> * Add `powerSet`, `cartesianProduct`, and `disjointUnion` for
>   `Data.Set`. (Thanks, Edward Kmett.)
>
> * Add `disjoint` for `Data.Set` and `Data.IntSet`. (Thanks, Víctor López
> Juan.)
>
> * Add `lookupMin` and `lookupMax` to `Data.IntMap`. (Thanks, bwroga.)
>
> * Add `unzip` and `unzipWith` to `Data.Sequence`. Make unzipping
>   build its results in lockstep to avoid certain space leaks.
>
> * Add carefully optimized implementations of `sortOn` and `unstableSortOn`
>   to `Data.Sequence`. (Thanks, Donnacha Oisín Kidney.)
>
> Changes to existing functions and features
>
> * Make `Data.Sequence.replicateM` a synonym for `replicateA`
>   for post-AMP `base`.
>
> * Rewrite the `IsString` instance head for sequences, improving
> compatibility
>   with the list instance and also improving type inference. We used to have
>
>       instance IsString (Seq Char)
>
>   Now we commit more eagerly with
>
>       instance a ~ Char => IsString (Seq a)
>
> * Make `>>=` for `Data.Tree` strict in the result of its second argument;
>   being too lazy here is almost useless, and violates one of the monad
> identity
>   laws. Specifically, `return () >>= \_ -> undefined` should always be
>   `undefined`, but this was not the case.
>
> * Harmonize laziness details for `minView` and `maxView` between
>   `Data.IntMap` and `Data.Map`.
>
> Performance improvement
>
> * Speed up both stable and unstable sorting for `Data.Sequence`
> (Thanks, Donnacha Oisín Kidney.)
>
> Other changes
>
> * Update for recent and upcoming GHC and Cabal versions (Thanks, Herbert
>   Valerio Reidel, Simon Jakobi, and Ryan Scott.)
>
> * Improve external and internal documentation (Thanks, Oleg Grenrus
>   and Benjamin Hodgson.)
>
> * Add tutorial-style documentation.
>
> * Add Haddock `@since` annotations for changes made since version
>   0.5.4 (Thanks, Simon Jakobi.)
>
> * Add a (very incomplete) test suite for `Data.Tree`.
>
> * Add structural validity checks to the test suites for `Data.IntMap`
>   and `Data.IntSet` (Thanks to Joachim Breitner for catching an error
>   in a first draft.)
> _______________________________________________
> Haskell-Cafe mailing list
> To (un)subscribe, modify options or view archives go to:
> http://mail.haskell.org/cgi-bin/mailman/listinfo/haskell-cafe
> Only members subscribed via the mailman list are allowed to post.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.haskell.org/pipermail/haskell-cafe/attachments/20180123/09ea1a4c/attachment.html>


More information about the Haskell-Cafe mailing list