En esta publicación , Martin (el jefe de la lengua) escribe:
[Literales XML] Parecía una gran idea en ese momento, ahora sobresale como un pulgar dolorido. Creo que con el nuevo esquema de interpolación de cadenas podremos colocar todo el procesamiento XML en las bibliotecas, lo que debería ser una gran victoria.
Al estar interesado en el diseño del lenguaje, me pregunto: ¿por qué escribe que fue un error incorporar literales XML al lenguaje? ¿Cuál es la controversia con respecto a esta característica?
language-design
scala
Roble
fuente
fuente
Respuestas:
Creo que Martin explica muy bien el razonamiento en su publicación:
El problema al que se enfrentan muchos idiomas cuando se vuelven cada vez más populares es que la comunidad busca características que se agreguen por encima del idioma. El peor de los casos de esto (al menos en mi libro) es C ++, donde tienes casi todo, pero nada en una forma unificada hermosa (ver, por ejemplo, esta pregunta que surge de eso).
La dificultad, cuando un idioma crece debido a las demandas / necesidades de la comunidad, es agregar las nuevas características de manera coherente con el núcleo del idioma. Y a este respecto, el soporte de literales XML de Scala es un dolor de cabeza, porque esto es algo único. En realidad no es parte de un hermoso núcleo unificado, pero se ha agregado como una solución única, mientras que la interpolación de cadenas es un concepto central lo suficientemente potente como para reemplazar la función única.
fuente