In article <1B6A403D-76A1-4BCF-B0E3-D8E24CCEE4E1 / gmail.com>,
  Yehuda Katz <wycats / gmail.com> writes:

> I understand the behavior, but I don't understand the *rationale* for  
> the behavior.
>
> Is the existence of {|x,| } intentional, or a parsing artifact? I can  
> fully understand the behavior of {|x,y| } in both block and lambda  
> context, but {|x,| } behaves rather strangely (as you documented).
>
> So again, is {|x,| } intentional?

As far as I know, it exists intentionally from the
beginning.  matz mentioned the extra comma of multiple
assignment in [ruby-list:384], 1996-08.

There is a practice to use the extra comma to obtain the
first element of an yielded array.

Google Code Search: ",|"
http://www.google.com/codesearch?q=lang%3Aruby+%22%2C%7C%22

Currently there is no strong reason to break them.
-- 
Tanaka Akira