There's an ecosystem brewing here...
Scala 2.10 edges closer with Milestone 6
The next milestone in Scala's long road to the 2.10 version has arrived, showing signs of a general cleanup for the language as it prepares for the full release.
We won't have to wait too long now for the big day with only two new features present this time round, indicating that it's nearly ready for us to test out. As ever, this release is cut directly from current development and is not intended for production environments. The Akka actors jar is now included in the distribution, whilst the backend emits Java 1.6 class files by default, with Java 1.5 class files deprecated.
The majority of Scala developers have been entrusted to go on a bughunt, with 60 bug fixes tackled, all of which can be found here in the announcement.
The multi-paradigm language is on the cusp of breaking free of its 'hipster'-ish shackles for an assault on the mainstream. The best indication of that is the amount of Scala projects now cropping up, all 22 of them offering a release alongside this version. There seems to be an audio theme of the ones listed below:
- scala-arm - provides automated resource management to ensure all your resources are closed without all the extra work!
- scalaz - for type classes and pure functional data structures
- ScalaInterpreterPane - the Swing based front-end for the Scala REPL (interpreter)
- AudioWidgets - specialized Swing widgets for audio applications in Scala
- ScalaAudioWidgets - wrappers for the library above
- ScalaAudioFile - read and write uncompresed audio files
- ScalaOSC - a library for OSC, a message protocol used in multimedia apps.
- ScalaCollider - a sound synthesis library for the SuperCollider server
- ScalaColliderSwing - Swing and REPL front-end
- FingerTree - a Scala implementation of the data structure
- Scala-IO Core - speaks for itself
- Scala-IO File - idomatic filesystem
- shapeless - an exploration of generic programming in Scala
- SLICK - Scala Language Integrated Connection Kit
- specs2 - library for executable specifications in Scala
- ScalaTest - the established method for testing Scala applications
- ScalaMock - native mocking with macros added in
- Scales Xml
- parboiled - lightweight yet powerful parsing
- scalalogging - performant logging
- scala-stm - transactional memory
Add to that the jewel in the crown, the Akka platform for building superb event-driven applications on the JVM, and you've got a pretty thriving community. This is no thanks in part down to the last version where big strides were made but now many more developers are seeing the charms of the language. Looks like Scala is making the right noises moving forward.