To answer your question, use puts song.to_s to display output. Puts is
technically a method of Kernel, but you can use it as just puts anywhere
in your Ruby program.
Gets does (kind of) the opposite of puts and “gets” what a user at the
command line typed.
why I can’t see output? where is output of inspect and to_s ?
It outputs to somewhere else? IO object ?
inspect and to_s just produce strings. To see them, you have to print
them In fact, there are some handy methods for this:
p song # automatically calls inspect
puts song # automatically calls to_s
Also, if you are working in irb (the interactive Ruby terminal),
you’ll see the value of every expression you type in. So in irb, if
your expression evaluates to a string, you’ll see the string without
having to explicitly ask for it to be printed.
It’s been a while since I’ve read that example but for some reason, I
remember thinking it was just an example to show how Ruby’s object
orientation worked… not a real functional example. Perhaps it was
and I completely missed it. Dunno…