On Sep 11, 2006, at 1:55 PM, Rick DeNatale wrote: > So, what's the real deal with BEGIN..END. What it really does is to > delimit a series of statements which are treated like an anonymous > method which is called in place. That's what I thought until recently, but there is a difference. Consider: <code> a = 1 begin a = 2 b = 3 p [a, b] # => [2, 3] end p a # => 2 p b # => 3 </code> If the begin ... end behaved _exactly_ like an anonymous method, we would see: <code> a = 1 begin a = 2 b = 3 p [a, b] # => [2, 3] end p a # => 1 p b # => raises NameError </code> Frankly, I would be happier with the latter behavior. Regards, Morton