dummy-link

Transducers

Efficient transducers for Julia

Readme

Transducers.jl: Efficient transducers for Julia

Stable documentation Latest documentation Travis Status codecov.io Coverage Status

Transducers.jl provides composable algorithms on "sequence" of inputs. They are called transducers, first introduced in Clojure language by Rich Hickey.

Using transducers is quite straightforward, especially if you already know similar concepts in iterator libraries:

using Transducers
xf = Partition(7) |> Filter(x -> prod(x) % 11 == 0) |> Cat() |> Scan(+)
mapfoldl(xf, +, 1:40)

However, the protocol used for the transducers is quite different from iterators and results in a better performance for complex compositions. Furthermore, some transducers support parallel execution. If a transducer is composed of such transducers, it can be automatically re-used both in sequential (mapfoldl etc.) and parallel (mapreduce) contexts.

See more in the documentation.

Installation

]add Transducers

First Commit

12/23/2018

Last Touched

about 13 hours ago

Commits

411 commits

Requires:

Used By: