Search code examples
rubynullputs

Why are all my puts returning =>nil?


I know this may seem like a really simple question, but it really bothers me that my puts keep generating "=> nil" and I scoured for an answer but could not find one. Thanks.

puts 'blink ' *4 blink blink blink blink => nil


Solution

  • Because that is the return value of puts:

    puts(obj, ...) → nil

    Writes the given objects to ios as with IO#print. Writes a record separator (typically a newline) after any that do not already end with a newline sequence. If called with an array argument, writes each element on a new line. If called without arguments, outputs a single record separator.

    source: http://www.ruby-doc.org/core-1.9.3/IO.html#method-i-puts

    Also, I assume this is just in irb? because calling puts doesn't display its return value in normal applications.