Почему метод power!
в классе Fixnum
Ruby назван с восклицательным знаком? По соглашению методы, имена которых заканчиваются на ! потенциально опасны (например, они могут каким-то образом модифицировать экземпляр).
Я понимаю разницу между gsub
и gsub!
в String
, но что не так с power!
? Похоже, он не изменяет экземпляр Fixnum
и не выполняет никаких других «опасных» действий; он просто возвращает результат.