Теория
Как передать не связанные между собой объекты в метод Ruby?
Отдельные аргументы, именованные параметры и коллекции позволяют передавать разные объекты. Выбор зависит от контракта метода, а не общей иерархии классов.
Читать ответ