другой способ, который предложил Нада (тот же самый, просто другой синтаксис):
proc = Proc.new do |name|
puts "thank you #{name}"
end
def thank(proc_argument, name)
proc_argument.call(name)
end
thank(proc, "for the music") #=> "thank you for the music"
thank(proc, "for the songs you're singing") #=> "thank you for the songs you're singing"
Это работает, но мне это не нравится.Тем не менее, это поможет читателям понять, КАК используются процедуры и блоки.