Cuando Martin Odersky habla de scala como una opción de idioma escalable, lo que quiere decir es que el lenguaje en sí es apropiado para:
- cosas de secuencias de comandos
- escribir aplicaciones
- escribir aplicaciones monstruosas de "empresa" (por falta de una palabra mejor)
¡Ciertamente no se refiere a la escalabilidad desde la perspectiva del rendimiento!
El hecho de que él pueda afirmar que Scala es tan apropiado para scripts rápidos y sucios como para el despliegue empresarial a gran escala es más o menos lo siguiente:
Scripting
Scala es ideal para las secuencias de comandos porque su inferencia de tipos y estilo funcional lo hacen conciso y excelente para cortar y cortar colecciones, etc.
Aplicaciones
Scala es ideal para escribir aplicaciones porque es un lenguaje marcado de tipo estático con algunas características excelentes para trabajar en estilos funcionales e imperativos. Scala es compatible con Java y, por lo tanto, puede aprovechar un enorme ecosistema de bibliotecas.
Despliegue empresarial
Scala se compila a bytecode y se ejecuta en la máquina virtual Java, un sistema estable con un gran rendimiento, en comparación con los lenguajes (llamados) dinámicamente escritos (es decir, sin tipo). Una vez más, el hecho de que está estáticamente escrito significa que la refactorización se hace mucho más fácil en bases de código grandes.