Yukihiro Matsumoto wrote:
> Hi,
>
<snip>
>
> A "super" without any argument nor parentheses would pass all given
> arguments and a block to the method in the super class.  I think you
> wanted to write:
>
>  class C2 < C1
>    def initialize( &block )
>      super()
>      puts "I went here !"
>    end
>  end
>
> Note empty parentheses after the "super".
>
> |It's a bug. (or a really surprising feature)
>
> It's a feature, which may be surprising for the newbies.
>
>
> 							matz.

What about making those who want to pass a block to super do something
like:

super() { |*args| yield(*args }

To me this seems more consistent.

-Charlie