sparse-0.9.1: sparse.cabal
name: sparse
category: Data, Vector
version: 0.9.1
license: BSD3
cabal-version: >= 1.8
license-file: LICENSE
author: Edward A. Kmett
maintainer: Edward A. Kmett <ekmett@gmail.com>
stability: experimental
homepage: http://github.com/ekmett/sparse
bug-reports: http://github.com/ekmett/sparse/issues
copyright: Copyright (C) 2013 Edward A. Kmett
build-type: Custom
synopsis: A playground of sparse linear algebra primitives using Morton ordering
extra-source-files:
.ghci
.travis.yml
.gitignore
.vim.custom
CHANGELOG.markdown
README.markdown
description:
A playground of sparse linear algebra primitives using Morton ordering
.
The design of this library is described in the series \"Revisiting Matrix Multiplication\" on FP Complete's School of Haskell.
.
<https://www.fpcomplete.com/user/edwardk/revisiting-matrix-multiplication/>
source-repository head
type: git
location: git://github.com/ekmett/sparse.git
-- Build the properties test if we're building tests
flag test-properties
default: True
manual: True
-- You can disable the doctests test suite with -f-test-doctests
flag test-doctests
default: True
manual: True
-- You can disable the hlint test suite with -f-test-hlint
flag test-hlint
default: True
manual: True
-- You can disable the optimizations -f-optimize for faster builds
flag optimize
default: True
manual: True
flag llvm
default: False
manual: True
library
build-depends:
base >= 4 && < 5,
contravariant >= 1 && < 2,
deepseq >= 1.1 && < 1.4,
hybrid-vectors >= 0.1 && < 1,
lens >= 4 && < 5,
primitive >= 0.5 && < 0.6,
transformers >= 0.3 && < 0.5,
vector >= 0.10 && < 0.11,
vector-algorithms >= 0.5 && < 0.7
hs-source-dirs: src
exposed-modules:
Sparse.Matrix
Sparse.Matrix.Internal.Array
Sparse.Matrix.Internal.Fusion
Sparse.Matrix.Internal.Heap
Sparse.Matrix.Internal.Key
ghc-options: -Wall
if flag(optimize)
ghc-options: -O2
else
ghc-options: -O0
if flag(llvm)
ghc-options: -fllvm
if impl(ghc<6.13)
Ghc-Options: -finline-if-enough-args -fno-method-sharing
test-suite properties
type: exitcode-stdio-1.0
main-is: properties.hs
hs-source-dirs: tests
ghc-options: -w -threaded -rtsopts -with-rtsopts=-N -fsimpl-tick-factor=400
if !flag(test-properties)
buildable: False
else
build-depends:
base,
containers,
hybrid-vectors,
lens,
linear >= 1.2 && < 2,
QuickCheck >= 2.5 && < 2.6,
sparse,
test-framework >= 0.6,
test-framework-quickcheck2 >= 0.3,
test-framework-th >= 0.2,
transformers,
vector
test-suite hlint
type: exitcode-stdio-1.0
main-is: hlint.hs
ghc-options: -w -threaded -rtsopts -with-rtsopts=-N
hs-source-dirs: tests
if !flag(test-hlint)
buildable: False
else
build-depends:
base,
hlint >= 1.7
-- Verify the results of the examples
test-suite doctests
type: exitcode-stdio-1.0
main-is: doctests.hs
ghc-options: -Wall -threaded
hs-source-dirs: tests
if !flag(test-doctests)
buildable: False
else
build-depends:
base,
bytestring,
containers,
directory >= 1.0,
deepseq,
doctest >= 0.9.10,
filepath,
mtl,
semigroups >= 0.9,
simple-reflect >= 0.3.1
if impl(ghc<7.6.1)
ghc-options: -Werror
-- matrix-matrix multiplication
benchmark mm
type: exitcode-stdio-1.0
main-is: mm.hs
ghc-options: -Wall -O2 -threaded -funbox-strict-fields -fsimpl-tick-factor=400000
hs-source-dirs: benchmarks
build-depends:
array,
base,
criterion,
deepseq,
sparse,
vector