[commit: packages/containers] changelog-foldtree, cleaned_bugfix394, master, merge-doc-target, merge-fixes-5.9, merge-restrict-fix-5.8, revert-184-generic, revert-408-bugfix_394: Remove wrong document in {Set, Map}.hs related to key comparison (7103ac6)

git at git.haskell.org git at git.haskell.org
Mon Apr 17 21:39:28 UTC 2017


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

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

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

commit 7103ac63adbda03924f92fc5ea36a9b31c90c597
Author: Masaru Nomura <massa.nomura at gmail.com>
Date:   Mon Mar 21 17:56:07 2016 +0900

    Remove wrong document in {Set, Map}.hs related to key comparison
    
    As we no longer use (<=) comparison but use (<) comparison instead
    since this commit[1], the document is not correct to explain the current implementation.
    
    [1] https://github.com/haskell/containers/commit/4193a09336772748bdec0cdab5da4257d224c814


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

7103ac63adbda03924f92fc5ea36a9b31c90c597
 Data/Map/Base.hs | 7 -------
 Data/Set/Base.hs | 7 -------
 2 files changed, 14 deletions(-)

diff --git a/Data/Map/Base.hs b/Data/Map/Base.hs
index 10d952f..4fdbc58 100644
--- a/Data/Map/Base.hs
+++ b/Data/Map/Base.hs
@@ -2436,13 +2436,6 @@ splitLookup k t = k `seq`
     [glue l r]        Glues [l] and [r] together. Assumes that [l] and
                       [r] are already balanced with respect to each other.
     [merge l r]       Merges two trees and restores balance.
-
-  Note: in contrast to Adam's paper, we use (<=) comparisons instead
-  of (<) comparisons in [link], [merge] and [balance].
-  Quickcheck (on [difference]) showed that this was necessary in order
-  to maintain the invariants. It is quite unsatisfactory that I haven't
-  been able to find out why this is actually the case! Fortunately, it
-  doesn't hurt to be a bit more conservative.
 --------------------------------------------------------------------}
 
 {--------------------------------------------------------------------
diff --git a/Data/Set/Base.hs b/Data/Set/Base.hs
index bf38e01..47efe85 100644
--- a/Data/Set/Base.hs
+++ b/Data/Set/Base.hs
@@ -1259,13 +1259,6 @@ deleteAt i t = i `seq`
     [glue l r]        Glues [l] and [r] together. Assumes that [l] and
                       [r] are already balanced with respect to each other.
     [merge l r]       Merges two trees and restores balance.
-
-  Note: in contrast to Adam's paper, we use (<=) comparisons instead
-  of (<) comparisons in [link], [merge] and [balance].
-  Quickcheck (on [difference]) showed that this was necessary in order
-  to maintain the invariants. It is quite unsatisfactory that I haven't
-  been able to find out why this is actually the case! Fortunately, it
-  doesn't hurt to be a bit more conservative.
 --------------------------------------------------------------------}
 
 {--------------------------------------------------------------------



More information about the ghc-commits mailing list