Conversión implícita de la opción Scala: ¿mala práctica o característica faltante?

Represente mi modelo de datos como clases de casos que escriben valores que pueden ser nulos como Opción.

case class Document(id: Long, title: String, subtitle: Option[String])

Ahora trato de instanciar la clase de caso:

Document(123, "The Title", "Subtitle") // Doesn't work

Pero NO! Esto no funciona, tengo que ajustar el valor opcional en algunos.

Document(123, "The Title", Some("Subtitle")) // Works

Scala es muy inteligente sobre los tipos en general, pero ¿por qué no es evidente que un literal codificado, o (cualquier cadena para el caso) es diferente de nulo / Ninguno?

Pude arreglar esto y hacer que Scala sea "más inteligente" al agregar esta conversión implícita

implicit def autoSome[T](any:T) = Some(any)
Document(123, "The Title", "Subtitle") // Now it works!

Pregunta: ¿Soy el único que el lenguaje debe proporcionar conversión implícita T -> Some (T) fuera de la caja? ¿O hay algún problema que no conozco acerca de tener implícitos tan amplios en todas partes por defecto?

Respuestas a la pregunta(3)

Su respuesta a la pregunta