Skip to content
Concurrent, sequential, functional transformations along Golang channels.
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
.gitignore
.travis.yml
LICENSE
README.md
TODO.md
drop_chan.go
drop_chan_example_test.go
drop_chan_test.go
drop_while.go
drop_while_chan.go
drop_while_chan_example_test.go
drop_while_chan_test.go
drop_while_slice.go
drop_while_slice_example_test.go
drop_while_slice_test.go
field_by_name.go
field_by_name_example_test.go
field_by_name_test.go
filter.go
filter_chan.go
filter_chan_example_test.go
filter_chan_test.go
filter_slice.go
filter_slice_example_test.go
filter_slice_test.go
flatten_chan.go
flatten_chan_example_test.go
flatten_chan_test.go
flatten_slice.go
flatten_slice_example_test.go
flatten_slice_test.go
for_each.go
for_each_chan.go
for_each_chan_example_test.go
for_each_chan_test.go
for_each_slice.go
for_each_slice_example_test.go
for_each_slice_test.go
iterate.go
iterate_chan.go
iterate_chan_example_test.go
iterate_chan_test.go
map.go
map_cat_chan.go
map_cat_chan_example_test.go
map_cat_chan_test.go
map_cat_slice.go
map_cat_slice_example_test.go
map_cat_slice_test.go
map_chan.go
map_chan_example_test.go
map_chan_test.go
map_slice.go
map_slice_example_test.go
map_slice_test.go
map_test.go
onto_chan.go
onto_chan_example_test.go
onto_chan_test.go
reduce.go
reduce_chan.go
reduce_chan_example_test.go
reduce_chan_test.go
reduce_slice.go
reduce_slice_example_test.go
reduce_slice_test.go
repeatedly.go
repeatedly_chan.go
repeatedly_chan_example_test.go
repeatedly_chan_test.go
take_chan.go
take_chan_example_test.go
take_chan_test.go
take_while.go
take_while_chan.go
take_while_chan_example_test.go
take_while_chan_test.go
take_while_slice.go
take_while_slice_example_test.go
take_while_slice_test.go
util.go
zip_chan.go
zip_chan_example_test.go
zip_chan_test.go
zip_slice.go
zip_slice_example_test.go
zip_slice_test.go

README.md

pipe Build Status

All the usual functional ways to work with sequences of data in Go.

Usage

import "github.com/paulbellamy/pipe"

Why

Because a bit of functional programming can make code a lot more readable and expressive.

Should I Use This?

It depends. It is pretty heavy on runtime-reflection. Are you ok with sacrificing some of Go's static-type-checking and compile-time safety for more expressiveness?

Documentation

Contributing

Contributions are welcome via pull requests.

License

Copyright © 2014 Paul Bellamy

Released under the MIT License.

You can’t perform that action at this time.