J'ai vu qu'ils étaient documentés ensemble ici . Sont-ils la même chose? Pourquoi Ruby a-t-il autant d'alias (comme map / collect pour les tableaux)? Merci beaucoup.
114
Oui, et il est également appelé fold
dans de nombreux autres langages de programmation et en mathématiques. Ruby utilise beaucoup d'alias afin d'être intuitif pour les programmeurs d'horizons différents. Si vous souhaitez utiliser #length
sur un Array
, vous pouvez. Si vous voulez l'utiliser #size
, c'est bien aussi!
inject
pour que les utilisateurs n'aient pas à lire les deux description et essayez de déterminer si elles sont identiques ... cela ne va-t-il pas avec le principe DRY?Les versions plus récentes de la documentation le
Enumerable#reduce
spécifient explicitement:la source
&:+
), réduire, si c'est un bloc, injecter