Skip to content

iokasimov/pipeline

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

7 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Lightweight, continuation-based and minimal streaming library

Implementation of streaming from "Faster coroutine pipelines" paper.

Example: copy file contents line by line

source :: Pipeline i String IO () ()
source = impact (lines <$> readFile "text_src.txt") >>= sequence_ . fmap yield

target :: Pipeline String o IO () ()
target = forever $ await >>= impact . appendFile "text_tgt.txt" . flip (<>) "\n"

main = pipeline (source =*= target)

About

Lightweight, continuation-based and minimal streaming library

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published