I don't understand why my method translate
undefines start_with?
method and is messing something in irb, so I can exit irb only by pressing Ctrl+d, not exit
or quit
:
>> "hello".respond_to?(:start_with?) => true >> def translate(string) >> if string.start_with?("a", "e", "i", "o", "u") >> string += "ay" >> end >> end NoMethodError: undefined method `start_with?' for #<:instructionsequence:0x00000001d4c960> from (irb):3:in `translate' from /usr/local/rvm/rubies/ruby-2.3.0/bin/irb:11:in `' >> "hello".respond_to?(:start_with?) NoMethodError: undefined method `start_with?' for <:instructionsequence:irb_binding>:RubyVM::InstructionSequence from (irb):3:in `translate' from /usr/local/rvm/rubies/ruby-2.3.0/bin/irb:11:in `' >> exit NoMethodError: undefined method `start_with?' for <:instructionsequence:irb_binding>:RubyVM::InstructionSequence from (irb):3:in `translate' from /usr/local/rvm/rubies/ruby-2.3.0/bin/irb:11:in `' >> quit NoMethodError: undefined method `start_with?' for <:instructionsequence:irb_binding>:RubyVM::InstructionSequence from (irb):3:in `translate' from /usr/local/rvm/rubies/ruby-2.3.0/bin/irb:11:in `' >>
I tried two different workspaces and effect is the same.
My Ruby and Rails versions are:
~/workspace $ ruby -v ruby 2.3.0p0 (2015-12-25 revision 53290) [x86_64-linux] ~/workspace $ rails -v Rails 4.2.2
from my other question I know that word translate
is used by many I18N libraries, so it's my only suspect, hence the title of this question. However as a beginner, I don't see any relation.