yarr: Yet another array library
Yarr is a new blazing fast dataflow framework (array library),
mainly intented to process Storable
s (including all "primitive" numeric types)
and fixed-vector
s 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
In some cases the library is considerably faster than repa
.
See benchmark results: https://github.com/leventov/yarr/blob/master/tests/bench-results.md
Shortcoming by design: lack of pure indexing interface.
Changes in 1.3 (ex. 0.9.3):
IFusion -- mapping/zipping with index
Rename: Work -> Walk
Changes in version 0.9.2:
Safe folds -- see Data.Yarr.Walk
Issue with slice-wise loading with unrolled filling function solved
To start with, read documentation in the root module: Data.Yarr.
Yarr!
Modules
[Index]
- Data
- Data.Yarr
- Data.Yarr.Base
- Data.Yarr.Convolution
- Data.Yarr.Eval
- Data.Yarr.Flow
- Data.Yarr.Fusion
- IO
- Data.Yarr.IO.List
- Repr
- Data.Yarr.Repr.Boxed
- Data.Yarr.Repr.Delayed
- Data.Yarr.Repr.Foreign
- Data.Yarr.Repr.Separate
- Data.Yarr.Shape
- Utils
- Data.Yarr.Utils.FixedVector
- Data.Yarr.Utils.Fork
- Data.Yarr.Utils.Parallel
- Data.Yarr.Utils.Primitive
- Data.Yarr.Utils.Split
- Data.Yarr.Walk
- Data.Yarr
- Debug
- Debug.Yarr
Downloads
- yarr-1.3.3.1.tar.gz [browse] (Cabal source package)
- Package description (as included in the package)
Maintainer's Corner
For package maintainers and hackage trustees
Candidates
- No Candidates
Versions [RSS] | 0.9.1, 0.9.2, 1.2.3, 1.3.1, 1.3.2, 1.3.3, 1.3.3.1, 1.3.3.2, 1.3.3.3, 1.4.0.0, 1.4.0.1, 1.4.0.2 |
---|---|
Dependencies | base (>=4.6 && <4.8), deepseq (>=1.3 && <1.4), fixed-vector (==0.1.2.1), ghc-prim (>=0.3 && <0.4), missing-foreign (==0.1.1), primitive (>=0.2 && <0.6), template-haskell (>=2.8 && <2.10) [details] |
License | MIT |
Author | Roman Leventov |
Maintainer | Roman Leventov <leventov@ya.ru> |
Category | Data Structures, Data Flow, Graphics |
Bug tracker | https://github.com/leventov/yarr/issues |
Source repo | head: git clone https://github.com/leventov/yarr.git(yarr) |
Uploaded | by DominicSteinitz at 2014-12-30T09:27:43Z |
Distributions | |
Reverse Dependencies | 2 direct, 0 indirect [details] |
Downloads | 9456 total (2 in the last 30 days) |
Rating | (no votes yet) [estimated by Bayesian average] |
Your Rating | |
Status | Docs uploaded by user [build log] Last success reported on 2014-12-30 [all 1 reports] |