[commit: packages/containers] cleaned_bugfix394, master, merge-doc-target, merge-fixes-5.9, merge-restrict-fix-5.8, revert-408-bugfix_394: Stop using hedge algorithms (c3083cf)

git at git.haskell.org git at git.haskell.org
Mon Apr 17 21:44:30 UTC 2017


Repository : ssh://git@git.haskell.org/containers

On branches: cleaned_bugfix394,master,merge-doc-target,merge-fixes-5.9,merge-restrict-fix-5.8,revert-408-bugfix_394
Link       : http://git.haskell.org/packages/containers.git/commitdiff/c3083cfceb4fa1370e764698019e97faadee44e7

>---------------------------------------------------------------

commit c3083cfceb4fa1370e764698019e97faadee44e7
Author: David Feuer <David.Feuer at gmail.com>
Date:   Thu Jul 28 21:52:08 2016 -0400

    Stop using hedge algorithms
    
    Replace hedge algorithms with divide and conquer algorithms for unions,
    intersections, differences, and merges in `Data.Set` and `Data.Map`. The
    divide and conquer algorithms
    
    * are much simpler,
    
    * have recently been proven asymptotically optimal, and
    
    * are faster on most benchmarks, sometimes much faster, and never
      much slower.


>---------------------------------------------------------------

c3083cfceb4fa1370e764698019e97faadee44e7
 .gitignore                |   1 +
 Data/IntMap/Base.hs       |   2 +
 Data/Map/Base.hs          | 307 +++++++++++++++-------------------------------
 Data/Map/Strict.hs        |  53 ++++----
 Data/Set/Base.hs          | 161 +++++-------------------
 Data/Utils/StrictMaybe.hs |   7 ++
 changelog.md              |   5 +
 7 files changed, 169 insertions(+), 367 deletions(-)

Diff suppressed because of size. To see it, use:

    git diff-tree --root --patch-with-stat --no-color --find-copies-harder --ignore-space-at-eol --cc c3083cfceb4fa1370e764698019e97faadee44e7


More information about the ghc-commits mailing list