Da Scala auf der JVM mit normalen Bytecode läuft, können wir die gesamte Palette der Java - Tools verwenden. Dies bedeutet jedoch, dass wir uns an die Art und Weise der Programmierung in Java anpassen müssen. Schöner ist es jedoch Tools zu verwenden, die für die Verwendung in Scala optimiert sind (und zumeist in selbst in Scala geschrieben sind). Derartige Tools gibt es mittlerweile in einer beträchtlichen und weiter steigenden Anzahl. Die Zusammenfassung aus der Programmiersprache Scala mit deren Standardbibliothek, den Tools und Frameworks und den entsprechenden IDE's bezeichnen wir hier als Scala Universum, woraus hier einige Bestandteile kurz vorgestellt werden sollen.
Akka ist ein Framework (Middleware) für die nebenläufige Programmierung. Akka bringt unter anderem ein Aktor-Modell zur Nachrichten basierten, nebenläufigen Programmierung mit. Der Einstieg in Akka ist schwieriger als die Verwendung der Aktoren der Scala Standardbibliothek, verspricht aber eine bessere Performanz. Akka ist Bestandteil des Typesafe stack, was den Status des Frameworks hervorhebt.
Hyperscala ist ein Framework zur Erzeugung von HTML, CSS und JavaScript auf Scala Basis. Es ermöglicht so die typsichere Programmierung von Webseiten.
Lift ist ein auf Scala basierendes Web-Framework für die Java Plattform. Lift enthält ein HTTP-Framework, AJAX Support, Comet-Support und vieles mehr.
Play ist ein Web-Framework mit nativer Unterstützung für Scala. Play ist Open Source und steht unter der Apache-Lizenz 2.0. Play ist Teil des Typesafe stack.
https://github.com/harrah/xsbt/wiki
SBT ist ein Akronym für Scala Build Tool, ein in Scala geschriebenes Build-Tool, welches in der Arbeitsweise Maven ähnelt. SBT ist Bestandteil des Typesafe stack.
Als Scala IDE wird das Scala Plugin für Eclipse bezeichnet. Die Scala IDE ermöglicht die Scala Programmierung mit Eclipse. Neben Syntaxhighlightning, Code completition, ... werden auch gemischte Java / Scala Projekte ermöglicht. Die Scala IDE ist Bestandteil des Typesafe stack.
http://code.google.com/p/scalacheck/
ScalaCheck ist ein Tool für automatisierte Unit-Tests. Es unterstützt dabei Programme die in Scala oder Java geschrieben sind.
Scala.js kompiliert Scala Quelltext nach JavaScript.
http://scalate.fusesource.org/
Scalate ist eine Template Engine für Scala, welche aber auch von Java aus verwendet werden kann. Scalate arbeitet ähnlich den Java Server Pages (JSP). Scalate kann zum Beispiel Stand-allone zur Generierung statischer Webseiten verwendet werden. Weiter kann Scalate im Zusammenspiel mit Servlets, JAX-RS, Lift, Play, SCaml ... eingesetzt werden.
ScalaTest ist ein Test-Framework für die JVM. ScalaTest ermöglicht uns das Testen von Java wie auch Scala Klassen unter Zuhilfenahme der Programmiersprache Scala. ScalaTest bietet eine Integration in verschiedene Test-Frameworks wie z.B. JUnit.
Scalatra ist ein vom Ruby-Webframework Sinatra inspiriertes, leichtgewichteges Webframework.
https://github.com/scalaz/scalaz
Scalaz ist eine Bibliothek, geschrieben in und für Scala. Scalaz stellt sich der Aufgabe, allgemeine Funktionalität für Scala bereitzustellen, welche aktuell noch nicht in den Standardbibliotheken zu finden sind.
https://github.com/weiglewilczek/slf4s
SLF4S ist ein Wrapper für SLF4J. SL4S bietet ein Logging Trait, welcher einfach in Klassen hinein-gemixed werden kann.