Actually, the join step is unnecessary given that the arrays will match or not at that point, but it still seems like an ergonomic step if we are thinking in words. 🙂
Very cool
i'm learning ruby currently and the refactor steps are very clear and easy to follow.
At then end only one line method!
i would have written this in 20 lines probably and in a couple of hours :)
I'd think sorting the characters of the string and comparing them would be a fine solution.
In Ruby:
We might want to refactor into two functions
The
?
in Ruby is just another character, but it's commonly used in naming comparison methods like this.Actually, the
join
step is unnecessary given that the arrays will match or not at that point, but it still seems like an ergonomic step if we are thinking in words. 🙂If we wanted the comparison to work for
n
words, we might take an approach like this:This would check if the "unique" array of sorted words is a length of one, indicating they are all the same.
In true Ruby style, we could monkey patch the
Array
class, like such:So then we could call:
Looking up methods on the
Array
class, I see that I can refactor the above to:This may be less clear to non-Rubyists, but that method is there for a reason for Ruby folks.
Following your train of thought was fun
Very cool
i'm learning ruby currently and the refactor steps are very clear and easy to follow.
At then end only one line method!
i would have written this in 20 lines probably and in a couple of hours :)
Cool stuff.
Hi Ben,
seems to have a small typo in your code (first part).
After "==" should be second_word, no?