The extra `\n` is a little jarring at first but I see why it's needed.  What do you think about changing `stream.puts` to `stream.print`?  Then it's not needed.