2011-01-17 8 views
28

RubyではProc.new { 'waffles' }proc { 'waffles' }の間に違いはありますか?私は2番目の構文についてはほとんど言及していません。Ruby:Proc.new {'waffles'}とproc {'waffles'}

irbを使用してテストしたところ、明らかな違いは見つかりませんでした。第二の構文的砂糖は最初のものですか?

答えて

42

)ルビー1.8、カーネル#procを(では113

Metaprogamming Rubyのページから)が(実際にはカーネル#ラムダの同義語です。 Ruby 1.9ではプログラマからの大きな抗議のためにproc()はProc.new()の代わりになりました。

+0

名誉ある。私は1.9を使用しているので、私の場合は違いはありません。 – ClosureCowboy

+1

を参照:http://books.google.ca/books?id=jcUbTcr5XWwC&pg=PA194&lpg=PA194&dq=ruby+proc+synonym&source=bl&ots=fHJltd8taE&sig=pHkE5W-c9iHHHHfacmuPzeYuI48&hl=en&ei=fuMzTanHDo2usAPyqLTgBQ&sa=X&oi=book_result&ct=result&resnum=6&ved= 0CDUQ6AEwBQ#v = onepage&q = ruby​​%20proc%20synonym&f = false – Zabba