Would it be fair to say you don't want to write this?
z = ->(x) { x + 1 }
z.call(y) z = ->(x) { x + 1 }
z.call(y)Letting you obtain some kind of raw reference to a block that isn't a method on an object would make blocks unlike every other value in Ruby.
Ruby doesn't have functions; things that look like bare (non-method) function calls in other languages are just method calls on self.
So procs/lambdas can't be called the same as, or differently from, functions—they are the closest thing Ruby has to functions to start with.