Esto es tal una pregunta tonta. Scala es un lenguaje completo: ergo es equivalente en lo que se puede desarrollar a cualquier otro lenguaje TC.
Se tiene acceso a todas las bibliotecas JVM (incluyendo los que están escritos en Java) y por lo tanto tiene una pierna hasta en términos de acceso a bases de datos, APIs de medios de comunicación, redes etcétera, etcétera, etcétera. Al ser un lenguaje JVM, tiene la ventaja de write-once-run-anywhere (WORA).
¡Pero, por supuesto, Java también las tiene! Entonces, ¿cuál es la fuerza de Scala? Bueno, claridad, expresividad, facilidad de mantenimiento, extensibilidad et cetera et cetera et cetera.
¿Y qué aplicación te señala como un asesino? Bueno, todos ellos por supuesto! ¡Ten algunas mentiras!
def fibs = (0, 1).repeat[Stream].map { case (a, b) => b -> (a+b) } map(_._1)
o:
lazy val fibs: Stream[Int] = 0 ::#
(1 ::#
fib.zip(fibs.tail).map { case (a,b) => a + b)))
PS. Lo único para lo que no es muy bueno es una programación extremadamente cercana al metal y de baja latencia. ¡Y está incursionando en esta área también!
@Dario: Twitter no está escrito en Java, ¿o sí? Creo que están usando Ruby on Rails. – jwueller
@elusive: el front-end de twitter es RoR, el back-end de la cola de mensajes se basa en Scala –
@oxbow_lakes: bien entonces. Gracias por señalar eso :) – jwueller