Ruby: Módulo, Mixins y Bloques confusos?
A continuación se muestra el código que intenté ejecutar desde elRuby Programming
Librohttp://www.ruby-doc.org/docs/ProgrammingRuby/html/tut_modules.html
¿Por qué noproduct
Método de dar la salida correcta? Lo corri conirb test.rb
. Y estoy corriendoRuby 1.9.3p194
.
module Inject
def inject(n)
each do |value|
n = yield(n, value)
end
n
end
def sum(initial = 0)
inject(initial) { |n, value| n + value }
end
def product(initial = 1)
inject(initial) { |n, value| n * value }
end
end
class Array
include Inject
end
[1, 2, 3, 4, 5].sum ## 15
[1, 2, 3, 4, 5].product ## [[1], [2], [3], [4], [5]]