Odpowiedzi:
Tak, i jest również wywoływany foldw wielu innych językach programowania i matematyce. Ruby używa aliasów, aby być intuicyjnym dla programistów z różnymi doświadczeniami. Jeśli chcesz użyć #lengthna Array, możesz. Jeśli chcesz użyć #size, to też jest w porządku!
inject, aby użytkownicy nie musieli czytać dwóch opis i spróbuj dowiedzieć się, czy są takie same ... czy nie jest to zgodne z zasadą DRY?
Nowsze wersje dokumentacji Enumerable#reduceokreślają to wyraźnie:
injectIreducemetody są aliasy. Nie ma też żadnej korzyści z wydajności.
&:+), zmniejszyć, czy jest to blok, inject