2008/5/23  <Nate_Wiger / playstation.sony.com>:

>    # Use coupled {{ }}
>    named_scope :recent, {{|time = 2.weeks.ago| {:conditions =>
>     ["released_at > ?", time]} }}

What I don't quite understand is why we can't have multiple blocks to
a method.  All but the last would be converted to anonymous functions
that become normal parameters and the last would be a block that can
be yielded to as before.  I just read
http://pragdave.blogs.pragprog.com/pragdave/2008/05/new-lambda-synt.html
and I'd prefer

a = 0
my_while { a < 5 }  do
   puts a
   a += 1
end

over

a = 0
my_while -> { a < 5 }  do
   puts a
   a += 1
end

(And I'd prefer 5.times{ |a| puts a } over both alternatives.)