Accepted answer

Because you could do this:

case class Example(value: String = "default", otherValues: String*)

And now if you call Example("Hello", "world"), does the first "Hello" belongs to value or to otherValues?

You could argue that the types in your examples are different, but the rules become too complicated to follow. For example repeated parameters often used with Any type. This example case class Example(value: Option[String] = None, otherValues: Any*) has different types, but still struggles with the same problem

Related Query

More Query from same tag