kdt 0.2.0 → 0.2.1
raw patch · 3 files changed
+36/−2 lines, 3 filesdep ~MonadRandom
Dependency ranges changed: MonadRandom
Files
- app-src/Data/Point2d.hs +27/−0
- changelog.md +4/−0
- kdt.cabal +5/−2
+ app-src/Data/Point2d.hs view
@@ -0,0 +1,27 @@+{-# OPTIONS_HADDOCK hide #-}++{-# LANGUAGE DeriveGeneric #-}++module Data.Point2d where++import Control.DeepSeq+import Control.DeepSeq.Generics (genericRnf)+import GHC.Generics+import Test.QuickCheck++data Point2d = Point2d Double Double deriving (Show, Eq, Ord, Generic)+instance NFData Point2d where rnf = genericRnf++pointAsList2d :: Point2d -> [Double]+pointAsList2d (Point2d x y) = [x, y]++distSqr2d :: Point2d -> Point2d -> Double+distSqr2d (Point2d x1 y1) (Point2d x2 y2) = let dx = x2 - x1+ dy = y2 - y1+ in dx*dx + dy*dy++instance Arbitrary Point2d where+ arbitrary = do+ x <- arbitrary+ y <- arbitrary+ return (Point2d x y)
changelog.md view
@@ -1,3 +1,7 @@+# 0.2.1+* Relax upper version constraint for MonadRandom (benchmarking code)+* Add Data.Point2d as dependency of executables so tests and benchmarks can be built from the archive downloaded on Hackage.+ # 0.2.0 * Lots and lots of renaming all throughout to more closely match terminology used in `containers`. * Removed kdt library dependency on QuickCheck (if not building testing code).
kdt.cabal view
@@ -2,7 +2,7 @@ -- see http://haskell.org/cabal/users-guide/ name: kdt-version: 0.2.0+version: 0.2.1 synopsis: Fast and flexible k-d trees for various types of point queries. description: This package includes static and dynamic versions of k-d trees, as well as \"Map\" variants that store data at each point in the@@ -45,6 +45,7 @@ Test-Suite StaticTest type: exitcode-stdio-1.0 main-is: Tests/StaticTest.hs+ other-modules: Data.Point2d hs-source-dirs: app-src ghc-options: -Wall -O3 build-depends: base >=4.6 && <4.8,@@ -57,6 +58,7 @@ Test-Suite DynamicTest type: exitcode-stdio-1.0 main-is: Tests/DynamicTest.hs+ other-modules: Data.Point2d hs-source-dirs: app-src ghc-options: -Wall -O3 build-depends: base >=4.6 && <4.8,@@ -69,13 +71,14 @@ benchmark KDTBenchmark type: exitcode-stdio-1.0 main-is: Benchmarks/KDTBenchmark.hs+ other-modules: Data.Point2d hs-source-dirs: app-src ghc-options: -Wall -O3 ghc-prof-options: -Wall -O3 -fprof-auto "-with-rtsopts=-p" build-depends: base >=4.6 && <4.8, kdt -any,- MonadRandom >= 0.1.12 && <0.2,+ MonadRandom >= 0.1.12 && <0.4, mersenne-random-pure64 >=0.2.0.4 && <0.3, criterion >= 1.0.0.0 && <1.1, pqueue >=1.2.1 && <1.3,