>>>>> "D" == David A Black <dblack / wobblini.net> writes:

D> I tend to feel that the [block, lambda, Proc, method] stuff is too
D> complicated.

 I'm agree with you, just make it more complex to solve the 
 complication :-)

svg% cat b.rb
#!/usr/bin/ruby
require 'aa'

class A < Proc
   def self.new(&block)
      proc(&block)
   end
end

a = A.new {|x, *y| p x,y }
p a.class
a.call([1, 2])
svg% 

svg% b.rb
A
[1, 2]
[]
svg% 


Guy Decoux