packages feed

loops-0.1.0.0: loops.cabal

name:                loops
version:             0.1.0.0
synopsis:            Fast imperative-style loops
description:
  @loops@ is a library for fast, imperative-style loops in Haskell. Performance
  is robust because there is no reliance on fusion. @do@-notation nests loops,
  providing syntax cleaner than manual recursion. A class @ForEach@ is provided
  enabling iteration over common container types.
  .
  For best performance, please compile your code with @-O2@. You should also
  use GHC's LLVM backend if possible; it generally produces faster executables.
license:             BSD3
license-file:        LICENSE
author:              Thomas Tuegel
maintainer:          ttuegel@gmail.com
copyright:           (c) Thomas Tuegel 2014
category:            Control
build-type:          Simple
extra-source-files:  README.md, README.lhs
cabal-version:       >=1.10

source-repository head
  type: git
  location: https://github.com/ttuegel/loops.git

library
  exposed-modules:
    Control.Monad.Loop
    Control.Monad.Loop.ForEach
    Control.Monad.Loop.Internal
  build-depends:
    base >=4.7 && <5,
    primitive >=0.5 && <1,
    transformers >=0.3 && <1,
    vector >=0.10 && <1
  ghc-options: -Wall
  hs-source-dirs: src
  default-language: Haskell2010

test-suite tests
  type: exitcode-stdio-1.0
  hs-source-dirs:
    test
  main-is:
    Test.hs
  other-modules:
    Test.Sum
  build-depends:
    base >=4.7 && <5,
    loops,
    tasty >=0.8 && <1,
    tasty-quickcheck >=0.8 && <1
  ghc-options: -Wall
  default-language: Haskell2010

benchmark benchs
  type: exitcode-stdio-1.0
  hs-source-dirs:
    bench
  main-is:
    Bench.hs
  other-modules:
    Bench.Sum
  build-depends:
    base >=4.7 && <5,
    criterion >=0.8 && <1,
    loops,
    transformers >=0.3 && <1,
    vector >=0.10 && <1
  ghc-options: -Wall
  default-language: Haskell2010