[ANN] ChannelBuffers

This parallel Tasks/Threads package ChannelBuffers implements piped streams in Julia.
Typical usage:

curl("...file.tgz") | gunzip() | tarx("target-dir") |> run |> wait

Each job is performed in a separate task; tasks may be spawned in different threads.
Each job is implemented by a function f(cin::IO, cout::IO, args...), which is straight forward in the above examples.

8 Likes

Released ChannelBuffers v0.2.0.
It now integrates external commandline processes and internal Julia Tasks and Threads.

So now we can do for example

`ls -l` → transcoder(MyEncoder("key")) → "ls.gz"

If we have implemented MyEncoder in Julia.

5 Likes