Thanks a lot. It works! When I checked the methods of class Proc in the "Programming Ruby" book, they cover only "new", "[]", "arity", and "call". Probably this use of "&" to convert back is described in the "The Ruby Language" section. Logically, does this "&" operator belong to the Proc class, the Object class, or the Kernel module? Regards, Bill ============================================================================ Reimer Behrends <behrends / cse.msu.edu> wrote: >> Can we pass the block from func2 to func1? If yes, how? (It seems there >> is no way to convert back from a Proc object to a block.) > Make it the last argument, and prefix it with "&" as above. Another > example (it has needless overhead in creating a Proc object only to > discard it, but illustrates the point): > 10.times &proc{|x| p x} > Hope this helps. > Reimer Behrends