Я видел, что они здесь вместе задокументированы . Это одно и то же? Почему в Ruby так много псевдонимов (например, map / collect для массивов)? Большое спасибо.
114
Да, и это также называется fold
во многих других языках программирования и в математике. Ruby использует много псевдонимов, чтобы быть интуитивно понятным программистам с разным опытом. Если вы хотите использовать #length
его Array
, вы можете. Если вы хотите использовать #size
, это тоже нормально!
inject
чтобы пользователям не приходилось читать два описание и попытайтесь выяснить, совпадают ли они ... разве это не согласуется с принципом DRY?В более поздних версиях документации
Enumerable#reduce
это явно указано:источник
&:+
), уменьшить, если это блок, ввести