Continuing my investigation of expressing F# ideas in C#, I wanted a pipe forward operator. For anything wrapped in a IEnumerable, we already have it, as you can .NextFunc()
While it's not quite the same thing, you might be interested in my Push LINQ framework. Basically where IEnumerable requires the interested party to pull data from a source, Push LINQ lets you push data through a source, and interested parties can subscribe to events corresponding to "another element has just gone past" and "the data has finished".
Marc Gravell and I have implemented most of the standard LINQ query operators, which means you can write query expressions against data sources and do fun stuff like streaming grouping, multiple aggregations etc.