News

Scala 2.11 Goes Live

Typesafe, the chief commercial backer of the open source Scala project, has announced the final release of Scala 2.11.

This update targets Java 6, with "evolving experimental support for Java 8," the company says. Along with 613 bug fixes, this release includes such new features as a leaner core Scala library jar (20 percent of its bytecode), an internally modularized compiler (separates the presentation compiler, scaladoc and REPL), and a new experimental way of compiling closures. Also with this release, Scala.js, the experimental JavaScript back-end for Scala 2.11, becomes a separate project (not part of the standard Scala distribution).

Scala, which was developed by Typesafe co-founder Martin Odersky, is a general purpose, multi-paradigm language designed to integrate features of object-oriented programming and functional programming, which emphasizes the evaluation of expressions rather than the execution of commands. Scala runs on the Java Virtual Machine (JVM) and is compatible with existing Java programs.

Typesafe is also the force behind Akka, an open source, asynchronous, event-driven middleware implemented in Scala. The company recently announced the availability of the first draft specification of Akka streams, an implementation of the open source Reactive Streams project.

The company also developed the Play Web app framework. Play is a full development and runtime environment billed by the company as "a clean alternative to legacy Enterprise Java stacks" which compiles Java and Scala sources directly and "hot reloads" them into the JVM (no need to restart the server).

Together these tools comprise the Typesafe Reactive Platform, which supports the development of so-called "reactive" applications on the JVM. Conceptualized in the "Reactive Manifesto," reactive applications are apps that better meet the "contemporary challenges of software development," in a world in which applications are deployed to everything from mobile devices to cloud-based clusters running thousands of multicore processors. The manifesto defines the four "critical traits" of reactive apps: event-drivenscalableresilient, and responsive. By embracing these traits, developers produce apps that are highly responsive to user experiences, provide a real-time feel, and are backed by a "scalable and resilient application stack" that can be deployed just about anywhere.

A complete list of Scala 2.11 features is available on the Typeface blog. The new version is available for download now from scala-lang.org and through Maven Central.

About the Author

John K. Waters is the editor in chief of a number of Converge360.com sites, with a focus on high-end development, AI and future tech. He's been writing about cutting-edge technologies and culture of Silicon Valley for more than two decades, and he's written more than a dozen books. He also co-scripted the documentary film Silicon Valley: A 100 Year Renaissance, which aired on PBS.  He can be reached at [email protected].