It seems there is a bug in Predef:
def readLine(text: String, args: Any*) = Console.readLine(text, args)
When I think it should be:
def readLine(text: String, args: Any*) = Console.readLine(text, args: _*)
The first version causes the args to be be wrapped in WrappedArray when called like this: readLine("hello %s%n", "world")
I'm not sure why WrappedArray but a quick test in REPL shows the second version would work and also it makes sense to use the type ascription to use the seq as a repeated parameter.