在Ruby中,Proc.new { 'waffles' }
和proc { 'waffles' }
之间是否存在任何差异?我发现很少提到第二种语法。
使用irb
测试时,我没有发现任何明显的差异。是第一个的第二个语法糖吗?
答案 0 :(得分:45)
来自Metaprogamming Ruby Page 113。
在Ruby 1.8中,内核#proc()实际上是Kernel#lambda()的同义词。由于程序员的强烈抗议,Ruby 1.9使proc()成为Proc.new()的同义词。