packages feed

acc-0.2.0.2: acc.cabal

cabal-version:      3.0
name:               acc
version:            0.2.0.2
synopsis:           Sequence optimized for monoidal construction and folding
description:
  Data structure intended for accumulating a sequence of elements
  for later traversal or folding.
  Useful for implementing all kinds of builders on top.
  .
  The benchmarks show that for the described use-case it
  is on average 2 times faster than 'DList' and 'Seq',
  is on par with list when you always prepend elements and
  is exponentially faster than list when you append.

homepage:           https://github.com/nikita-volkov/acc
bug-reports:        https://github.com/nikita-volkov/acc/issues
author:             Nikita Volkov <nikita.y.volkov@mail.ru>
maintainer:         Nikita Volkov <nikita.y.volkov@mail.ru>
copyright:          (c) 2020 Nikita Volkov
license:            MIT
license-file:       LICENSE
extra-source-files:
  bench-results
  README.md

source-repository head
  type:     git
  location: git://github.com/nikita-volkov/acc.git

library
  hs-source-dirs:     library
  default-extensions:
    NoImplicitPrelude
    NoMonomorphismRestriction
    BangPatterns
    ConstraintKinds
    DataKinds
    DefaultSignatures
    DeriveDataTypeable
    DeriveFoldable
    DeriveFunctor
    DeriveGeneric
    DeriveTraversable
    EmptyDataDecls
    FlexibleContexts
    FlexibleInstances
    FunctionalDependencies
    GADTs
    GeneralizedNewtypeDeriving
    InstanceSigs
    LambdaCase
    LiberalTypeSynonyms
    MagicHash
    MultiParamTypeClasses
    MultiWayIf
    OverloadedStrings
    ParallelListComp
    PatternGuards
    QuasiQuotes
    RankNTypes
    RecordWildCards
    ScopedTypeVariables
    StandaloneDeriving
    StrictData
    TemplateHaskell
    TupleSections
    TypeApplications
    TypeFamilies
    TypeOperators
    UnboxedTuples
    ViewPatterns

  default-language:   Haskell2010
  exposed-modules:
    Acc
    Acc.NeAcc

  other-modules:
    Acc.NeAcc.Def
    Acc.Prelude

  build-depends:
      base >=4.13 && <5
    , deepseq >=1.4 && <2
    , semigroupoids >=5.3 && <7

benchmark bench
  type:               exitcode-stdio-1.0
  hs-source-dirs:     bench
  main-is:            Main.hs
  default-extensions:
    NoImplicitPrelude
    NoMonomorphismRestriction
    BangPatterns
    ConstraintKinds
    DataKinds
    DefaultSignatures
    DeriveDataTypeable
    DeriveFoldable
    DeriveFunctor
    DeriveGeneric
    DeriveTraversable
    EmptyDataDecls
    FlexibleContexts
    FlexibleInstances
    FunctionalDependencies
    GADTs
    GeneralizedNewtypeDeriving
    InstanceSigs
    LambdaCase
    LiberalTypeSynonyms
    MagicHash
    MultiParamTypeClasses
    MultiWayIf
    OverloadedStrings
    ParallelListComp
    PatternGuards
    QuasiQuotes
    RankNTypes
    RecordWildCards
    ScopedTypeVariables
    StandaloneDeriving
    StrictData
    TemplateHaskell
    TupleSections
    TypeApplications
    TypeFamilies
    TypeOperators
    UnboxedTuples
    ViewPatterns

  default-language:   Haskell2010
  ghc-options:
    -O2 -threaded -with-rtsopts=-N -rtsopts -funbox-strict-fields

  build-depends:
      acc
    , criterion >=1.6 && <2
    , rerebase >=1.19 && <2

test-suite test
  type:               exitcode-stdio-1.0
  hs-source-dirs:     test
  default-extensions:
    NoImplicitPrelude
    NoMonomorphismRestriction
    BangPatterns
    ConstraintKinds
    DataKinds
    DefaultSignatures
    DeriveDataTypeable
    DeriveFoldable
    DeriveFunctor
    DeriveGeneric
    DeriveTraversable
    EmptyDataDecls
    FlexibleContexts
    FlexibleInstances
    FunctionalDependencies
    GADTs
    GeneralizedNewtypeDeriving
    InstanceSigs
    LambdaCase
    LiberalTypeSynonyms
    MagicHash
    MultiParamTypeClasses
    MultiWayIf
    OverloadedStrings
    ParallelListComp
    PatternGuards
    QuasiQuotes
    RankNTypes
    RecordWildCards
    ScopedTypeVariables
    StandaloneDeriving
    StrictData
    TemplateHaskell
    TupleSections
    TypeApplications
    TypeFamilies
    TypeOperators
    UnboxedTuples
    ViewPatterns

  default-language:   Haskell2010
  main-is:            Main.hs
  build-depends:
      acc
    , quickcheck-instances >=0.3.11 && <0.4
    , rerebase >=1.9 && <2
    , tasty >=0.12 && <2
    , tasty-quickcheck >=0.9 && <0.11