Quiero crear un filtro y poder aplicarlo a una matriz o hash. Por ejemplo:¿Cómo creo un bloque/proc/lambda reutilizable en Ruby?
def isodd(i)
i % 2 == 1
end
La quiero ser capaz de utilizarlo como tal:
x = [1,2,3,4]
puts x.select(isodd)
x.delete_if(isodd)
puts x
Esta parece que debería ser simple, pero no puedo averiguar lo que tengo que hacer lo hace funcionar
También puede usar el operador "stabby lambda" para crear el proceso independiente. Ver http://stackoverflow.com/questions/9340117/what-is-the-stab-operator-in-ruby. Disponible a partir de 'ruby 1.9'. Por supuesto, puramente una cuestión de gusto y estilo de codificación :) – zealoushacker
para aquellos que leen en el futuro, también se pueden crear lambdas como este: lambda_name = ->() {puts "hello world"} – BKSpurgeon