Actually, Donald's question makes me think of one of my own. Suppose I have three Ruby methods (doesn't matter whether they are bound to a receiver or are "standalone"). And suppose they read standard input and write to standard output. How would I (easily/properly) chain them together, effectively doing meth1 | meth2 | meth3 ? I fiddled with a "Pipable" class... didn't make much progress. I also considered something like meth1._pipe.meth2._pipe.meth3 (adding a _pipe method and a couple of pipe objects to every Object) but decided this was a crazy scheme. Any ideas? Hal