From: Brian Candler Date: 2008-11-12T16:53:33+09:00 Subject: [ruby-core:19867] Re: is this design...intentional? On Wed, Nov 12, 2008 at 07:24:16AM +0900, Charles Oliver Nutter wrote: > Roger Pack wrote: >> p = proc do |arg| >> return if arg == 17 >> puts arg >> end >> >> p[1] # prints "1" >> p[17] # prints nothing >> >> p = Proc.new do |arg| >> return if arg == 17 >> puts arg >> end >> >> p[1] # prints "1" >> p[17] # raises LocalJumpError > > In 1.8 "proc" means "lambda" and "lambda" can be returned from. I think > a similar behavioral difference still exists in Ruby 1.9. In 1.9, proc has been changed so it's an alias for Proc.new rather than lambda.