Chcę utworzyć filtr i być w stanie zastosować go do tablicy lub hasza. Na przykład:Jak utworzyć blok wielokrotnego użytku/proc/lambda w Ruby?
def isodd(i)
i % 2 == 1
end
I chcą, aby móc używać go tak:
x = [1,2,3,4]
puts x.select(isodd)
x.delete_if(isodd)
puts x
Wydaje się, że powinna być prosta, ale nie mogę dowiedzieć się, co trzeba zrobić to działa.
Możesz również użyć operatora "nożnych lambda", aby utworzyć wolnostojący proces. Zobacz http://stackoverflow.com/questions/9340117/what-is-the-stab-operator-in-ruby. Dostępne od 'ruby 1.9'. Oczywiście, czysto kwestia gustu i stylu kodowania :) – zealoushacker
dla tych, którzy czytają w przyszłości, można również stworzyć lambdas w ten sposób: lambda_name = ->() {stawia "cześć świat"} – BKSpurgeon