packages feed

Cabal revisions of hgeometry-0.14

Hackage metadata revisions edit the .cabal file after upload; each diff below is one revision.

revision 1
-cabal-version:       2.4-name:                hgeometry-version:             0.14-synopsis:            Geometric Algorithms, Data structures, and Data types.-description:-  HGeometry provides some basic geometry types, and geometric algorithms and-  data structures for them. The main two focusses are: (1) Strong type safety,-  and (2) implementations of geometric algorithms and data structures with good-  asymptotic running time guarantees. Note that HGeometry is still highly experimental, don't be surprised to find bugs.--homepage:            https://fstaals.net/software/hgeometry-license:             BSD-3-Clause-license-file:        LICENSE-author:              Frank Staals-maintainer:          frank@fstaals.net--- copyright:--tested-with:         GHC >= 8.8--category:            Geometry-build-type:          Simple--extra-source-files:  README.md-                     changelog-                     changelog.org--Extra-doc-files:     docs/**/*.png-                     docs/**/*.jpg-source-repository head-  type:     git-  location: https://github.com/noinia/hgeometry--library-  ghc-options: -O2 -Wall -fno-warn-unticked-promoted-constructors -fno-warn-type-defaults--  exposed-modules:-                    -- * Primitives; Simulating General Position-                    Algorithms.Geometry.SoS-                    Algorithms.Geometry.SoS.Symbolic--                    -- * Generic Geometry-                    Data.Geometry-                    Data.Geometry.Properties-                    Data.Geometry.Transformation-                    Data.Geometry.Boundary-                    Data.Geometry.Duality-                    Data.Geometry.Directions--                    -- * Basic Geometry Types-                    Data.Geometry.Vector-                    Data.Geometry.Vector.VectorFixed-                    Data.Geometry.Vector.VectorFamily--                    Data.Geometry.Matrix--                    -- Data.Geometry.Vector.Vinyl-                    Data.Geometry.Interval-                    Data.Geometry.Point--                    Data.Geometry.Line-                    Data.Geometry.LineSegment-                    Data.Geometry.LineSegment.Internal-                    Data.Geometry.SubLine-                    Data.Geometry.HalfLine-                    Data.Geometry.PolyLine-                    Data.Geometry.HyperPlane-                    Data.Geometry.HalfSpace-                    Data.Geometry.Triangle-                    -- Data.Geometry.Plane-                    Data.Geometry.Slab-                    Data.Geometry.Box-                    Data.Geometry.Box.Internal-                    Data.Geometry.Box.Sides-                    Data.Geometry.Box.Corners--                    Data.Geometry.Ball-                    Data.Geometry.Ellipse--                    Data.Geometry.Polygon-                    Data.Geometry.Polygon.Bezier-                    Data.Geometry.Polygon.Inflate-                    Data.Geometry.Polygon.Convex-                    Data.Geometry.Polygon.Monotone--                    Data.Geometry.BezierSpline--                    -- * Geometric Data Structures-                    Data.Geometry.IntervalTree-                    Data.Geometry.SegmentTree-                    Data.Geometry.SegmentTree.Generic--                    Data.Geometry.KDTree--                    Data.Geometry.PlanarSubdivision-                    Data.Geometry.PlanarSubdivision.Raw-                    Data.Geometry.PlanarSubdivision.Dynamic-                    Data.Geometry.PlanarSubdivision.TreeRep--                    Data.Geometry.Arrangement--                    Data.Geometry.RangeTree-                    Data.Geometry.RangeTree.Measure-                    Data.Geometry.RangeTree.Generic--                    Data.Geometry.PrioritySearchTree--                    Data.Geometry.QuadTree-                    Data.Geometry.QuadTree.Cell-                    Data.Geometry.QuadTree.Quadrants-                    Data.Geometry.QuadTree.Split-                    Data.Geometry.QuadTree.Tree--                    Data.Geometry.PointLocation-                    Data.Geometry.PointLocation.PersistentSweep--                    Data.Geometry.VerticalRayShooting-                    Data.Geometry.VerticalRayShooting.PersistentSweep--                    -- * Algorithms--                    -- * Geometric Algorithms-                    Algorithms.Geometry.ConvexHull-                    Algorithms.Geometry.ConvexHull.GrahamScan-                    Algorithms.Geometry.ConvexHull.DivideAndConquer-                    Algorithms.Geometry.ConvexHull.QuickHull-                    Algorithms.Geometry.ConvexHull.JarvisMarch-                    Algorithms.Geometry.ConvexHull.Naive--                    Algorithms.Geometry.LowerEnvelope.DualCH--                    Algorithms.Geometry.SmallestEnclosingBall-                    Algorithms.Geometry.SmallestEnclosingBall.RIC-                    Algorithms.Geometry.SmallestEnclosingBall.Naive--                    Algorithms.Geometry.DelaunayTriangulation.Types-                    Algorithms.Geometry.DelaunayTriangulation.DivideAndConquer-                    Algorithms.Geometry.DelaunayTriangulation.Naive--                    Algorithms.Geometry.PolyLineSimplification.ImaiIri-                    Algorithms.Geometry.PolyLineSimplification.DouglasPeucker--                    Algorithms.Geometry.EuclideanMST-                    Algorithms.Geometry.EuclideanMST.EuclideanMST--                    Algorithms.Geometry.WSPD-                    Algorithms.Geometry.WellSeparatedPairDecomposition.WSPD-                    Algorithms.Geometry.WellSeparatedPairDecomposition.Types--                    Algorithms.Geometry.Diameter-                    Algorithms.Geometry.Diameter.Naive-                    Algorithms.Geometry.Diameter.ConvexHull--                    -- Algorithms.Geometry.Sweep-                    Algorithms.Geometry.PolygonTriangulation-                    Algorithms.Geometry.PolygonTriangulation.Types-                    Algorithms.Geometry.PolygonTriangulation.Triangulate-                    Algorithms.Geometry.PolygonTriangulation.MakeMonotone-                    Algorithms.Geometry.PolygonTriangulation.TriangulateMonotone-                    Algorithms.Geometry.PolygonTriangulation.EarClip--                    Algorithms.Geometry.LineSegmentIntersection-                    Algorithms.Geometry.LineSegmentIntersection.Naive-                    Algorithms.Geometry.LineSegmentIntersection.BentleyOttmann-                    Algorithms.Geometry.LineSegmentIntersection.BooleanSweep--                    -- Algorithms.Geometry.HiddenSurfaceRemoval.HiddenSurfaceRemoval--                    Algorithms.Geometry.ClosestPair-                    Algorithms.Geometry.ClosestPair.Naive-                    Algorithms.Geometry.ClosestPair.DivideAndConquer--                    Algorithms.Geometry.LinearProgramming.Types-                    Algorithms.Geometry.LinearProgramming.LP2DRIC--                    Algorithms.Geometry.RedBlueSeparator.RIC--                    Algorithms.Geometry.FrechetDistance.Discrete--                    Algorithms.Geometry.VisibilityPolygon.Lee-                    Algorithms.Geometry.SSSP-                    Algorithms.Geometry.SSSP.Naive--                    Algorithms.Geometry.RayShooting.Naive--                    -- * Embedded Planar Graphs-                    Data.PlaneGraph-                    Data.PlaneGraph.AdjRep-                    Data.PlaneGraph.IO--                    -- * Graphics stuff-                    Graphics.Camera-                    Graphics.Render--  other-modules:-                    Data.Geometry.Matrix.Internal-                    Data.Geometry.Transformation.Internal--                    -- * Implementation Internals of Polygons-                    Data.Geometry.Polygon.Core-                    Data.Geometry.Polygon.Extremes-                    Algorithms.Geometry.InPolygon--                    Algorithms.Geometry.LineSegmentIntersection.Types-                    Algorithms.Geometry.SmallestEnclosingBall.Types--                    Algorithms.Geometry.WSPD.Types--                    Data.Geometry.Vector.VectorFamilyPeano--                    Data.Geometry.Point.Internal-                    Data.Geometry.Point.Orientation-                    Data.Geometry.Point.Quadrants-                    Data.Geometry.Point.Orientation.Degenerate-                    Data.Geometry.Point.Class--                    Data.Geometry.Line.Internal---                    Data.Geometry.Interval.Util--                    Algorithms.Geometry.SoS.Expr-                    Algorithms.Geometry.SoS.AsPoint-                    Algorithms.Geometry.SoS.Internal-                    Algorithms.Geometry.SoS.Orientation-                    Algorithms.Geometry.SoS.Determinant-                    Algorithms.Geometry.SoS.Sign--                    Data.PlaneGraph.Core--                    Data.Geometry.Arrangement.Internal--                    Data.Geometry.PlanarSubdivision.Basic-                    Data.Geometry.PlanarSubdivision.Merge--  -- other-extensions:-  build-depends:-                base                    >= 4.11      &&     < 5-              , hgeometry-combinatorial >= 0.13--              , bifunctors              >= 4.1-              , bytestring              >= 0.10-              , containers              >= 0.5.9-              -- , multi-containers        >= 0.2-              , dlist                   >= 0.7-              , lens                    >= 4.2-              , semigroupoids           >= 5-              , semigroups              >= 0.18-              -- , singletons              >= 2.0-              , linear                  >= 1.10-              , fixed-vector            >= 1.0-              , vector-builder          >= 0.3.7-              , vinyl                   >= 0.10-              , deepseq                 >= 1.1-              , fingertree              >= 0.1-              , MonadRandom             >= 0.5-              , random                  >= 1.1-              , QuickCheck              >= 2.5-              , quickcheck-instances    >= 0.3-              , reflection              >= 2.1-              , primitive               >= 0.6.3.0-              , hashable                >= 1.2--              -- , singleton-typelits      >= 0.1.0.0--              -- , ghc-typelits-natnormalise >= 0.6-              -- , ghc-typelits-knownnat     >= 0.6--              , vector                  >= 0.11-              , data-clist              >= 0.1.2.3-              , vector-circular         >= 0.1.4-              , nonempty-vector         >= 0.2.0.0-              , text                    >= 1.1.1.0-              , vector-algorithms-              , witherable              >= 0.4--              , aeson                   >= 1.0-              , yaml                    >= 0.8--              , mtl                     >= 2.2-              , template-haskell--              , hspec, QuickCheck, quickcheck-instances---  hs-source-dirs: src--  default-language:    Haskell2010--  default-extensions: TypeFamilies-                    , GADTs-                    , KindSignatures-                    , DataKinds-                    , TypeOperators-                    , ConstraintKinds-                    , PolyKinds-                    , RankNTypes-                    , TypeApplications-                    , ScopedTypeVariables--                    , PatternSynonyms-                    , TupleSections-                    , LambdaCase-                    , ViewPatterns--                    , StandaloneDeriving-                    , GeneralizedNewtypeDeriving-                    , DeriveFunctor-                    , DeriveFoldable-                    , DeriveTraversable-                    , DeriveGeneric-                    , DerivingStrategies-                    , DerivingVia---                    , FlexibleInstances-                    , FlexibleContexts-                    , MultiParamTypeClasses--test-suite doctests-  type:          exitcode-stdio-1.0-  ghc-options:   -threaded-  main-is:       doctests.hs-  build-depends: base-               , doctest             >= 0.8-               , doctest-discover-               , QuickCheck-               , quickcheck-instances--  default-language:    Haskell2010--benchmark benchmarks--  hs-source-dirs: benchmark--  main-is: Benchmarks.hs-  type: exitcode-stdio-1.0--  other-modules: Benchmark.Util-                 Algorithms.Geometry.ConvexHull.Bench-                 Algorithms.Geometry.ConvexHull.GrahamV2-                 Algorithms.Geometry.ConvexHull.GrahamFam-                 -- Algorithms.Geometry.ConvexHull.GrahamFamPeano-                 Algorithms.Geometry.ConvexHull.GrahamFixed-                 Data.Geometry.Vector.VectorFamily6-                 Algorithms.Geometry.ConvexHull.GrahamFam6-                 Data.Geometry.IntervalTreeBench-                 -- Demo.ExpectedPairwiseDistance-                 -- Demo.TriangulateWorld-                 -- WSPDBench-                 Algorithms.Geometry.ClosestPair.Bench--                 Algorithms.Geometry.LineSegmentIntersection.Bench-                 Algorithms.Geometry.LineSegmentIntersection.BentleyOttmannOld-                 Algorithms.Geometry.LineSegmentIntersection.BentleyOttmannNoExt-                 Algorithms.Geometry.LineSegmentIntersection.TypesNoExt--                 Algorithms.Geometry.PolygonTriangulation.Bench-                 Algorithms.Geometry.PolygonTriangulation.MakeMonotoneOld---  build-depends:-                base-              , tasty-bench-              , fixed-vector-              , linear-              , semigroups-              , deepseq-              , deepseq-generics-              , hgeometry-              , hgeometry-combinatorial-              , lens-              , semigroupoids-              , QuickCheck-              , bytestring-              , containers-              , optparse-applicative-              , vinyl-              , vector-              , dlist-              , mtl-              , vector-circular-              , MonadRandom-              , hashable---  ghc-options: -Wall -O2 -rtsopts -fno-warn-unticked-promoted-constructors--  default-language:    Haskell2010--  default-extensions: TypeFamilies-                    , GADTs-                    , KindSignatures-                    , DataKinds-                    , TypeOperators-                    , ConstraintKinds-                    , PolyKinds-                    , RankNTypes-                    , TypeApplications-                    , ScopedTypeVariables--                    , PatternSynonyms-                    , ViewPatterns-                    , LambdaCase-                    , TupleSections---                    , StandaloneDeriving-                    , GeneralizedNewtypeDeriving-                    , DeriveFunctor-                    , DeriveFoldable-                    , DeriveTraversable--                    , FlexibleInstances-                    , FlexibleContexts-                    , MultiParamTypeClasses-                    , DerivingStrategies-                    , DeriveGeneric+cabal-version:       2.4
+name:                hgeometry
+version:             0.14
+x-revision: 1
+synopsis:            Geometric Algorithms, Data structures, and Data types.
+description:
+  HGeometry provides some basic geometry types, and geometric algorithms and
+  data structures for them. The main two focusses are: (1) Strong type safety,
+  and (2) implementations of geometric algorithms and data structures with good
+  asymptotic running time guarantees. Note that HGeometry is still highly experimental, don't be surprised to find bugs.
+
+homepage:            https://fstaals.net/software/hgeometry
+license:             BSD-3-Clause
+license-file:        LICENSE
+author:              Frank Staals
+maintainer:          frank@fstaals.net
+-- copyright:
+
+tested-with:         GHC >= 8.8
+
+category:            Geometry
+build-type:          Simple
+
+extra-source-files:  README.md
+                     changelog
+                     changelog.org
+
+Extra-doc-files:     docs/**/*.png
+                     docs/**/*.jpg
+source-repository head
+  type:     git
+  location: https://github.com/noinia/hgeometry
+
+library
+  ghc-options: -O2 -Wall -fno-warn-unticked-promoted-constructors -fno-warn-type-defaults
+
+  exposed-modules:
+                    -- * Primitives; Simulating General Position
+                    Algorithms.Geometry.SoS
+                    Algorithms.Geometry.SoS.Symbolic
+
+                    -- * Generic Geometry
+                    Data.Geometry
+                    Data.Geometry.Properties
+                    Data.Geometry.Transformation
+                    Data.Geometry.Boundary
+                    Data.Geometry.Duality
+                    Data.Geometry.Directions
+
+                    -- * Basic Geometry Types
+                    Data.Geometry.Vector
+                    Data.Geometry.Vector.VectorFixed
+                    Data.Geometry.Vector.VectorFamily
+
+                    Data.Geometry.Matrix
+
+                    -- Data.Geometry.Vector.Vinyl
+                    Data.Geometry.Interval
+                    Data.Geometry.Point
+
+                    Data.Geometry.Line
+                    Data.Geometry.LineSegment
+                    Data.Geometry.LineSegment.Internal
+                    Data.Geometry.SubLine
+                    Data.Geometry.HalfLine
+                    Data.Geometry.PolyLine
+                    Data.Geometry.HyperPlane
+                    Data.Geometry.HalfSpace
+                    Data.Geometry.Triangle
+                    -- Data.Geometry.Plane
+                    Data.Geometry.Slab
+                    Data.Geometry.Box
+                    Data.Geometry.Box.Internal
+                    Data.Geometry.Box.Sides
+                    Data.Geometry.Box.Corners
+
+                    Data.Geometry.Ball
+                    Data.Geometry.Ellipse
+
+                    Data.Geometry.Polygon
+                    Data.Geometry.Polygon.Bezier
+                    Data.Geometry.Polygon.Inflate
+                    Data.Geometry.Polygon.Convex
+                    Data.Geometry.Polygon.Monotone
+
+                    Data.Geometry.BezierSpline
+
+                    -- * Geometric Data Structures
+                    Data.Geometry.IntervalTree
+                    Data.Geometry.SegmentTree
+                    Data.Geometry.SegmentTree.Generic
+
+                    Data.Geometry.KDTree
+
+                    Data.Geometry.PlanarSubdivision
+                    Data.Geometry.PlanarSubdivision.Raw
+                    Data.Geometry.PlanarSubdivision.Dynamic
+                    Data.Geometry.PlanarSubdivision.TreeRep
+
+                    Data.Geometry.Arrangement
+
+                    Data.Geometry.RangeTree
+                    Data.Geometry.RangeTree.Measure
+                    Data.Geometry.RangeTree.Generic
+
+                    Data.Geometry.PrioritySearchTree
+
+                    Data.Geometry.QuadTree
+                    Data.Geometry.QuadTree.Cell
+                    Data.Geometry.QuadTree.Quadrants
+                    Data.Geometry.QuadTree.Split
+                    Data.Geometry.QuadTree.Tree
+
+                    Data.Geometry.PointLocation
+                    Data.Geometry.PointLocation.PersistentSweep
+
+                    Data.Geometry.VerticalRayShooting
+                    Data.Geometry.VerticalRayShooting.PersistentSweep
+
+                    -- * Algorithms
+
+                    -- * Geometric Algorithms
+                    Algorithms.Geometry.ConvexHull
+                    Algorithms.Geometry.ConvexHull.GrahamScan
+                    Algorithms.Geometry.ConvexHull.DivideAndConquer
+                    Algorithms.Geometry.ConvexHull.QuickHull
+                    Algorithms.Geometry.ConvexHull.JarvisMarch
+                    Algorithms.Geometry.ConvexHull.Naive
+
+                    Algorithms.Geometry.LowerEnvelope.DualCH
+
+                    Algorithms.Geometry.SmallestEnclosingBall
+                    Algorithms.Geometry.SmallestEnclosingBall.RIC
+                    Algorithms.Geometry.SmallestEnclosingBall.Naive
+
+                    Algorithms.Geometry.DelaunayTriangulation.Types
+                    Algorithms.Geometry.DelaunayTriangulation.DivideAndConquer
+                    Algorithms.Geometry.DelaunayTriangulation.Naive
+
+                    Algorithms.Geometry.PolyLineSimplification.ImaiIri
+                    Algorithms.Geometry.PolyLineSimplification.DouglasPeucker
+
+                    Algorithms.Geometry.EuclideanMST
+                    Algorithms.Geometry.EuclideanMST.EuclideanMST
+
+                    Algorithms.Geometry.WSPD
+                    Algorithms.Geometry.WellSeparatedPairDecomposition.WSPD
+                    Algorithms.Geometry.WellSeparatedPairDecomposition.Types
+
+                    Algorithms.Geometry.Diameter
+                    Algorithms.Geometry.Diameter.Naive
+                    Algorithms.Geometry.Diameter.ConvexHull
+
+                    -- Algorithms.Geometry.Sweep
+                    Algorithms.Geometry.PolygonTriangulation
+                    Algorithms.Geometry.PolygonTriangulation.Types
+                    Algorithms.Geometry.PolygonTriangulation.Triangulate
+                    Algorithms.Geometry.PolygonTriangulation.MakeMonotone
+                    Algorithms.Geometry.PolygonTriangulation.TriangulateMonotone
+                    Algorithms.Geometry.PolygonTriangulation.EarClip
+
+                    Algorithms.Geometry.LineSegmentIntersection
+                    Algorithms.Geometry.LineSegmentIntersection.Naive
+                    Algorithms.Geometry.LineSegmentIntersection.BentleyOttmann
+                    Algorithms.Geometry.LineSegmentIntersection.BooleanSweep
+
+                    -- Algorithms.Geometry.HiddenSurfaceRemoval.HiddenSurfaceRemoval
+
+                    Algorithms.Geometry.ClosestPair
+                    Algorithms.Geometry.ClosestPair.Naive
+                    Algorithms.Geometry.ClosestPair.DivideAndConquer
+
+                    Algorithms.Geometry.LinearProgramming.Types
+                    Algorithms.Geometry.LinearProgramming.LP2DRIC
+
+                    Algorithms.Geometry.RedBlueSeparator.RIC
+
+                    Algorithms.Geometry.FrechetDistance.Discrete
+
+                    Algorithms.Geometry.VisibilityPolygon.Lee
+                    Algorithms.Geometry.SSSP
+                    Algorithms.Geometry.SSSP.Naive
+
+                    Algorithms.Geometry.RayShooting.Naive
+
+                    -- * Embedded Planar Graphs
+                    Data.PlaneGraph
+                    Data.PlaneGraph.AdjRep
+                    Data.PlaneGraph.IO
+
+                    -- * Graphics stuff
+                    Graphics.Camera
+                    Graphics.Render
+
+  other-modules:
+                    Data.Geometry.Matrix.Internal
+                    Data.Geometry.Transformation.Internal
+
+                    -- * Implementation Internals of Polygons
+                    Data.Geometry.Polygon.Core
+                    Data.Geometry.Polygon.Extremes
+                    Algorithms.Geometry.InPolygon
+
+                    Algorithms.Geometry.LineSegmentIntersection.Types
+                    Algorithms.Geometry.SmallestEnclosingBall.Types
+
+                    Algorithms.Geometry.WSPD.Types
+
+                    Data.Geometry.Vector.VectorFamilyPeano
+
+                    Data.Geometry.Point.Internal
+                    Data.Geometry.Point.Orientation
+                    Data.Geometry.Point.Quadrants
+                    Data.Geometry.Point.Orientation.Degenerate
+                    Data.Geometry.Point.Class
+
+                    Data.Geometry.Line.Internal
+
+
+                    Data.Geometry.Interval.Util
+
+                    Algorithms.Geometry.SoS.Expr
+                    Algorithms.Geometry.SoS.AsPoint
+                    Algorithms.Geometry.SoS.Internal
+                    Algorithms.Geometry.SoS.Orientation
+                    Algorithms.Geometry.SoS.Determinant
+                    Algorithms.Geometry.SoS.Sign
+
+                    Data.PlaneGraph.Core
+
+                    Data.Geometry.Arrangement.Internal
+
+                    Data.Geometry.PlanarSubdivision.Basic
+                    Data.Geometry.PlanarSubdivision.Merge
+
+  -- other-extensions:
+  build-depends:
+                base                    >= 4.11      &&     < 5
+              , hgeometry-combinatorial >= 0.13      &&     < 1
+
+              , bifunctors              >= 4.1
+              , bytestring              >= 0.10
+              , containers              >= 0.5.9
+              -- , multi-containers        >= 0.2
+              , dlist                   >= 0.7
+              , lens                    >= 4.2
+              , semigroupoids           >= 5
+              , semigroups              >= 0.18
+              -- , singletons              >= 2.0
+              , linear                  >= 1.10
+              , fixed-vector            >= 1.0
+              , vector-builder          >= 0.3.7
+              , vinyl                   >= 0.10
+              , deepseq                 >= 1.1
+              , fingertree              >= 0.1
+              , MonadRandom             >= 0.5
+              , random                  >= 1.1
+              , QuickCheck              >= 2.5
+              , quickcheck-instances    >= 0.3
+              , reflection              >= 2.1
+              , primitive               >= 0.6.3.0
+              , hashable                >= 1.2
+
+              -- , singleton-typelits      >= 0.1.0.0
+
+              -- , ghc-typelits-natnormalise >= 0.6
+              -- , ghc-typelits-knownnat     >= 0.6
+
+              , vector                  >= 0.11
+              , data-clist              >= 0.1.2.3
+              , vector-circular         >= 0.1.4
+              , nonempty-vector         >= 0.2.0.0
+              , text                    >= 1.1.1.0
+              , vector-algorithms
+              , witherable              >= 0.4
+
+              , aeson                   >= 1.0
+              , yaml                    >= 0.8
+
+              , mtl                     >= 2.2
+              , template-haskell
+
+              , hspec, QuickCheck, quickcheck-instances
+
+
+  hs-source-dirs: src
+
+  default-language:    Haskell2010
+
+  default-extensions: TypeFamilies
+                    , GADTs
+                    , KindSignatures
+                    , DataKinds
+                    , TypeOperators
+                    , ConstraintKinds
+                    , PolyKinds
+                    , RankNTypes
+                    , TypeApplications
+                    , ScopedTypeVariables
+
+                    , PatternSynonyms
+                    , TupleSections
+                    , LambdaCase
+                    , ViewPatterns
+
+                    , StandaloneDeriving
+                    , GeneralizedNewtypeDeriving
+                    , DeriveFunctor
+                    , DeriveFoldable
+                    , DeriveTraversable
+                    , DeriveGeneric
+                    , DerivingStrategies
+                    , DerivingVia
+
+
+                    , FlexibleInstances
+                    , FlexibleContexts
+                    , MultiParamTypeClasses
+
+test-suite doctests
+  type:          exitcode-stdio-1.0
+  ghc-options:   -threaded
+  main-is:       doctests.hs
+  build-depends: base
+               , doctest             >= 0.8
+               , doctest-discover
+               , QuickCheck
+               , quickcheck-instances
+
+  default-language:    Haskell2010
+
+benchmark benchmarks
+
+  hs-source-dirs: benchmark
+
+  main-is: Benchmarks.hs
+  type: exitcode-stdio-1.0
+
+  other-modules: Benchmark.Util
+                 Algorithms.Geometry.ConvexHull.Bench
+                 Algorithms.Geometry.ConvexHull.GrahamV2
+                 Algorithms.Geometry.ConvexHull.GrahamFam
+                 -- Algorithms.Geometry.ConvexHull.GrahamFamPeano
+                 Algorithms.Geometry.ConvexHull.GrahamFixed
+                 Data.Geometry.Vector.VectorFamily6
+                 Algorithms.Geometry.ConvexHull.GrahamFam6
+                 Data.Geometry.IntervalTreeBench
+                 -- Demo.ExpectedPairwiseDistance
+                 -- Demo.TriangulateWorld
+                 -- WSPDBench
+                 Algorithms.Geometry.ClosestPair.Bench
+
+                 Algorithms.Geometry.LineSegmentIntersection.Bench
+                 Algorithms.Geometry.LineSegmentIntersection.BentleyOttmannOld
+                 Algorithms.Geometry.LineSegmentIntersection.BentleyOttmannNoExt
+                 Algorithms.Geometry.LineSegmentIntersection.TypesNoExt
+
+                 Algorithms.Geometry.PolygonTriangulation.Bench
+                 Algorithms.Geometry.PolygonTriangulation.MakeMonotoneOld
+
+
+  build-depends:
+                base
+              , tasty-bench
+              , fixed-vector
+              , linear
+              , semigroups
+              , deepseq
+              , deepseq-generics
+              , hgeometry
+              , hgeometry-combinatorial
+              , lens
+              , semigroupoids
+              , QuickCheck
+              , bytestring
+              , containers
+              , optparse-applicative
+              , vinyl
+              , vector
+              , dlist
+              , mtl
+              , vector-circular
+              , MonadRandom
+              , hashable
+
+
+  ghc-options: -Wall -O2 -rtsopts -fno-warn-unticked-promoted-constructors
+
+  default-language:    Haskell2010
+
+  default-extensions: TypeFamilies
+                    , GADTs
+                    , KindSignatures
+                    , DataKinds
+                    , TypeOperators
+                    , ConstraintKinds
+                    , PolyKinds
+                    , RankNTypes
+                    , TypeApplications
+                    , ScopedTypeVariables
+
+                    , PatternSynonyms
+                    , ViewPatterns
+                    , LambdaCase
+                    , TupleSections
+
+
+                    , StandaloneDeriving
+                    , GeneralizedNewtypeDeriving
+                    , DeriveFunctor
+                    , DeriveFoldable
+                    , DeriveTraversable
+
+                    , FlexibleInstances
+                    , FlexibleContexts
+                    , MultiParamTypeClasses
+                    , DerivingStrategies
+                    , DeriveGeneric