The yarr package
Yarr is a new blazing fast dataflow framework (array library),
mainly intented to process
Storables (including all "primitive" numeric types)
fixed-vectors of them, for example coordinates,
color components, complex numbers.
Yarr framework is inspired by
repa library and inherits its features,
including shape-polymorphism and auto-parallelism.
Additionaly, the framework is polymorphic over type and arity
of fixed-size vectors and supports neat flow operations over them.
For example, you can convert colored image to greyscale like this:
let greyImage = zipElems (\r g b -> 0.21 * r + 0.71 * g + 0.07 * b) image
The library is considerably faster than
Canny edge detector on Yarr is 40% (on 5 threads)
and 55% (in sequential mode) faster then on
Shortcoming by design: lack of pure indexing interface.
Safe fold wrappers
Unresolved issues with parameterized unrolling in slice-wise loading
To start with, read documentation in the root module: Data.Yarr.
|Versions||0.9.1, 0.9.2, 1.2.3, 1.3.1, 1.3.2, 1.3.3, 220.127.116.11, 18.104.22.168, 22.214.171.124, 126.96.36.199, 188.8.131.52, 184.108.40.206|
|Dependencies||base (==4.6.*), deepseq (==1.3.*), fixed-vector (==0.1.2.1), ghc-prim (==0.3.*), missing-foreign (==0.1.1), primitive (>=0.2), template-haskell (==2.8.*) [details]|
|Maintainer||Roman Leventov <email@example.com>|
|Category||Data Structures, Data Flow, Graphics|
|Source repository||head: git clone https://github.com/leventov/yarr.git(yarr)|
|Uploaded||Mon Feb 11 17:45:30 UTC 2013 by RomanLeventov|
|Downloads||2463 total (160 in the last 30 days)|
|Rating||(no votes yet) [estimated by rule of succession]|
|Status||Docs uploaded by user
Build status unknown [no reports yet]
Hackage Matrix CI
For package maintainers and hackage trustees