Quoting Trans <transfire / gmail.com>: > You are right in that there is a caveat for having this in that > you need to know that they are going to be "anonymous methods" > in order to pass them around. But the same is true for calling a > proc, i.e. you have to know it's a proc to call it. Actually, no, you just need to know it's a Callable. Or duck-typed like one. Could be a continuation, or a proc, or some proxy object I just invented. I find that to be a very, very valuable property. > def proxy(a) > if lambda? a > actual(->a) > else > actual(a) > end > end Try: def proxy(a) if respond_to? :call actual(->a) else actual(a) end end If we do this, -> ought to work on anything that understands :call. -mental