diff options
-rw-r--r-- | libraries/base/Data/HashTable.hs | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/libraries/base/Data/HashTable.hs b/libraries/base/Data/HashTable.hs index 9711dd2b78..cb11e15418 100644 --- a/libraries/base/Data/HashTable.hs +++ b/libraries/base/Data/HashTable.hs @@ -199,7 +199,9 @@ hashInt32 x = mulHi x golden + x -- implemented by extracting the uppermost 32 bits of the 64-bit -- result of multiplying by a 33-bit constant. The constant is from -- Knuth, derived from the golden ratio: +-- -- > golden = round ((sqrt 5 - 1) * 2^32) +-- -- We get good key uniqueness on small inputs -- (a problem with previous versions): -- (length $ group $ sort $ map hashInt [-32767..65536]) == 65536 + 32768 |