Changelog for data-ordlist-0.4.4
Version 0.4.4: (2010-12-24)
* Simplified the implementation of `mergeAll` and `unionAll` based on
comments from Will Ness.
Version 0.4.3: (2010-03-02)
* Improved the implementation of `nubSort`, mirroring the improvements made
to `Data.List.sort` currently in GHC HEAD. Instead of initially breaking
the input list into singletons before the merge process, the improved
version breaks the input list into monotonic runs.
* Minor formatting improvements in the Haddock documentation.
Version 0.4.2: (2010-02-18)
* Fixed non-productive loop in `unionAll` when applied to an infinite list
of lists. Thanks to Omar Antolín Camarena for reporting the bug and
Heinrich Apfelmus for some useful comments.
* Added regression test to test suite.
Version 0.4.1: (2010-02-17)
* Simplified the implementation of `mergeAll` and `unionAll` thanks
to some pointers by Heinrich Apfelmus. This introduced an infinite
non-productive loop into `unionAll`, which was later fixed without
giving up the simplifications.
* Minor documentation fixes
Version 0.4: (2010-02-15)
* The "CHANGES" file was added to document the changes between releases.
* Documentation Improvements
* A rough first pass at a test suite
* The functions `mergeAll` and `unionAll` were added. They operate
on a possibly infinite list of possibly infinite ordered lists; assuming
the heads of the lists are ordered.
Thanks goes to Omar Antolín Camarena, Heinrich Apfelmus, and Dave Bayer.
Omar Antolín Camarena suggested the addition, located the article
used as the basis for the implementation, and was quite helpful with
testing and debugging.
Heinrich Apfelmus wrote his "Implicit Heaps" article, where he
simplified an algorithm by Dave Bayer. It is this article that forms
the basis of our implementation.
<http://apfelmus.nfshost.com/articles/implicit-heaps.html>
Dave Bayer posted his 'venturi' implementation to the haskell-cafe
mailing list on 2007 Jul 22. It also appears as "BayerPrimes.hs"
inside of Melissa O'Neill's "haskell-primes.zip":
<http://www.mail-archive.com/haskell-cafe@haskell.org/msg27612.html>
<http://www.cs.hmc.edu/~oneill/code/haskell-primes.zip>
Version 0.2: (2010-02-07)
* The module name was changed from `Data.OrdList` to `Data.List.Ordered`
* Fixed bugs in `insertSetBy`, `insertBagBy`, and `nub`. The insertion
functions assumed reversed lists, while `nub` failed to remove duplicates.
Thanks to Topi Karvonen for reporting the first issue!
* Changed semantics of `insertSetBy` slightly: the new version replaces an
element if it is already there. If the old semantics turns out to be
important, a new function can be added at a later date.
* Changed semantics of `nubBy`: the new version negates the binary relation,
so that `new_nubBy f == old_nubBy (not . f)`. It is now in better keeping
with the spirit of the rest of the library, and mades the bug in `nub`
more obvious.
* Better documentation, I hope. At the very least, the process of
documenting `nubBy` revealed the bug in `nub`.
Version 0.0.1: (2009-07-10)
* The initial release, sadly, did not contain the source file
Version 0.0: (2009-07-10)
* Initial Release