Risposte:
Sì, ed è anche chiamato foldin molti altri linguaggi di programmazione e in Matematica. Ruby si alias molto per essere intuitivo per i programmatori con background diversi. Se vuoi usare #lengthsu un Array, puoi. Se vuoi usare #size, va bene anche questo!
injectmodo che gli utenti non debbano leggere i due descrizione e cerca di capire se sono la stessa cosa ... non è d'accordo con il principio DRY?
Versioni più recenti della documentazione di lo Enumerable#reducespecificano esplicitamente:
I metodi
injectereducesono alias. Non ci sono vantaggi in termini di prestazioni per nessuno dei due.
&:+), riduci, se è un blocco, inietta