Inicio la sección de programación con un post sobre Ruby, lenguaje que estoy aprendiendo (fase novato) ahora mismo. Para quién no lo sepa, Ruby es un lenguaje de programación orientado a objetos, potente, rico y fácil de aprender , es multipropósito, aunque normalmente se asocia al desarrollo web. Volviendo a la cuestión que encabeza este post, ¿cuál es la diferencia entre blocks, procs y lambdas? Estos tres elementos se utilizan para agrupar código que queremos ejecutar. Lo más fácil de entender es que un block es un trozo de código de un método, tan solo utilizable una sola vez , tal y como podemos ver en el siguiente ejemplo: [2,3,5,9].each { |x| x*2 } #El block es { |x| x*2 }, y lo que hace es multiplicar 2, 3, 5 y 9 por 2 Algo peligroso, pero que también podemos pensar es que un proc puede servir para convertir un block en un trozo de código reutilizable, asociado a una variable. Los proc s son objectos, los block s no lo son. Un proc llamado pr...
Blog personal de Daniel Vento