packages feed

primitive-sort-0.1.2.3: primitive-sort.cabal

cabal-version:   2.2
name:            primitive-sort
version:         0.1.2.3
synopsis:        Sort primitive arrays
description:
  This library provides a stable sorting algorithm for primitive arrays.
  The algorithm currently uses mergesort on large chunks and switches
  to insertion sort on small chunks. There are also novel improvements
  to increase the performance if the input array is already mostly sorted.

homepage:        https://github.com/byteverse/primitive-sort
bug-reports:     https://github.com/byteverse/primitive-sort/issues
license:         BSD-3-Clause
license-file:    LICENSE
author:          Andrew Martin
maintainer:      amartin@layer3com.com
copyright:       2018 Andrew Martin
category:        software
build-type:      Simple
extra-doc-files:
  CHANGELOG.md
  README.md

common build-settings
  default-language: Haskell2010
  ghc-options:      -O2 -Wall -Wunused-packages

library
  import:          build-settings
  hs-source-dirs:  src
  exposed-modules: Data.Primitive.Sort
  build-depends:
    , base        >=0.4.16 && <5
    , contiguous  >=0.6    && <0.7
    , primitive   >=0.6.4  && <0.10

test-suite test
  import:         build-settings
  type:           exitcode-stdio-1.0
  hs-source-dirs: test
  main-is:        Main.hs
  build-depends:
    , base
    , containers
    , HUnit
    , primitive
    , primitive-sort
    , QuickCheck
    , smallcheck
    , tasty
    , tasty-hunit
    , tasty-quickcheck
    , tasty-smallcheck

  ghc-options:    -threaded -rtsopts -with-rtsopts=-N1

benchmark bench
  import:         build-settings
  type:           exitcode-stdio-1.0
  build-depends:
    , base
    , gauge           >=0.2.5
    , primitive
    , primitive-sort
    , random

  ghc-options:    -threaded -rtsopts -with-rtsopts=-N1
  hs-source-dirs: bench
  main-is:        Main.hs

source-repository head
  type:     git
  location: git://github.com/byteverse/primitive-sort.git