Я обнаружил, что во всех примерах (включая документацию по rails), которые я видел для: если опция методов проверки использует Proc.new вместо lambda, например
class Foo < ActiveRecord::Base
validates_presence_of :name, :if => Proc.new{|f| .... } # why not lambda here?
end
есть ли причина для этого?
Насколько я знаю, лямбда
- Строгее с аргументами.
- Также оператор return в лямбда-блоке возвращается из блока, а не из вызывающей функции.
И то, и другое кажется желательным для: если упомянутый выше вариант, я что-то упускаю?