… could use integers as well without having to think about the fact that it MUST be a string or will blow up with a strange error?
IO.puts will write each passed argument using a record separator, tipically a newline. This might lead to the situation where a different thread also writes to the same stream before writing the newline, which in turn will print a message right next to the other.
whitespaces. Instead split on words inside parenthesis, and failing that, on just bare words. This should produce better results, and fix issue #18.