From: Yukihiro Matsumoto Date: 2008-10-17T19:23:40+09:00 Subject: [ruby-core:19367] Re: Yet another block semantic/syntax question Hi, In message "Re: [ruby-core:19343] Yet another block semantic/syntax question" on Wed, 15 Oct 2008 23:03:20 +0900, "David A. Black" writes: |I just want to make sure I'm right that this is what happens, and that |it's supposed to happen: | |>> pr = Proc.new {|a,b=1| p a, b } |=> # |>> pr.call(10,20) |10 |1 |=> [10, 1] |In other words, Proc.new accepts the method-argument syntax, but does |not use method-argument semantics (it sets b unconditionally to 1). |(lambda uses method-arg semantics all the way in similar cases.) It's a bug. ;-< matz.