From: Yukihiro Matsumoto Date: 2005-10-12T02:25:33+09:00 Subject: Re: Default argument values for blocks Hi, In message "Re: Default argument values for blocks" on Wed, 12 Oct 2005 01:56:52 +0900, Daniel Schierbeck writes: |Is there a reason why I can't do this? | | foo = lambda { |foo = bar| puts foo } | foo.call | |I can't think of any good reason why this isn't valid. Mostly because yacc does not allow it. It confuses lambda { |foo = bar| puts foo } as lambda { |foo = (bar| puts foo) } and causes syntax error. matz.