Respuestas:
Sí, y también se llama fold
en muchos otros lenguajes de programación y en Matemáticas. Ruby utiliza muchos alias para ser intuitivo para programadores con diferentes antecedentes. Si quieres usarlo #length
en un Array
, puedes. Si quieres usar #size
, ¡también está bien!
inject
para que los usuarios no tengan que leer los dos descripción e intente averiguar si son iguales ... ¿no va esto con el principio DRY?
Las versiones más recientes de la documentación de Enumerable#reduce
especificarlo explícitamente:
Los métodos
inject
yreduce
son alias. No hay ningún beneficio de rendimiento para ninguno de los dos.
&:+
), reducir, si es un bloque, inyectar