Scala Creator's Company Goes for Scale with Scala/Java Dev Platform Update
Typesafe, the chief commercial backer of the open source Scala project, this week released the latest version of the company's software stack. Typesafe Stack 2.0 combines the Scala runtime, the Akka event-driven middleware, the Play Web framework and a suite of Eclipse-based development tools.
The company is billing this update of its flagship product as a comprehensive platform for building both Scala and Java applications "that can scale to the largest workloads in cloud computing and virtualized enterprise data center environments."
The big news in this release is the addition of the latest version of the open source Play Web framework. Aimed at Java and Scala developers, Play is a lightweight, stateless framework with a Web-friendly architecture. "From its inception, the Play Framework was created to bring a fresh web development experience, inspired by modern web frameworks, to the JVM web developer community," said Play creator Guillaume Bort in a statement. "For the 2.0 version we wanted to focus on highly-scalable and real-time Web applications, so including the Play Framework in the Typesafe Stack was a logical next step." Bort is a member of Typesafe's Advisory Board.
This version of Play is a "complete overhaul," said Typeface CEO Donald Fischer. Play started out as a Java-only framework, but now supports both Java and Scala application development natively. And it's wired to sit on top of Akka, so it's more scalable, he said.
The new Typesafe Stack also includes the latest version of Akka, which gets labeled as middleware, but more accurately speaking is an open source toolkit and runtime for building event-driven applications on the Java Virtual Machine (JVM). Akka 2.0 can handle up to 2.7 million "actors" per GB of memory. Actors are Scala's primary concurrency construct (concurrent processes that communicate by exchanging messages). This version also adds location transparency, which allows actors to reside on any node (local or remote) with no change in app code or semantics; configuration-based deployment capabilities; and supervision and life-cycle monitoring features. Akka was created by Typesafe CTO Jonas Bonér. The company combined Scala and Akka last year.
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. Odersky's brainchild runs on the JVM and is compatible with existing Java programs. Odersky has described Typesafe, which was launched last year, as "the commercial arm of the Scala and the Akka projects." Java concurrency guru Doug Lea serves on the company's advisory board, as does James Gosling, the father of Java.
This release of the Typesafe Stack comes with the new Typesafe Console, a monitory and management tool that is available only to those who subscribed to the company's commercial support services. As the company describes it, the Typesafe Console "complements the Typesafe Stack with an enterprise-grade dashboard for monitoring and administering applications built on the Typesafe Stack…"
Typesafe's primary mission, Fischer told ADTmag, is to provide app builders with a modern application development stack and the tools to build applications that scale. "If you look at how some of the large software systems on the web and in the enterprise are built today," Fischer observed, "they're not built on a traditional app server/J2EE style anymore. There's a different set of technologies being brought to bear now."
And yet despite the emphasis on the Scala language, the company isn't leaving out Java developers. The Scala compiler emits Java byte code, the apps run on the JVM, and both frameworks have Java APIs.
"If you are a Java developer, you can use our framework," Fischer said. "You don't have to use the Scala language, and a lot of our customers use both. It's one of our strengths that we stand on the shoulders of Java."
The new Typesafe Stack is available now on the company's download page.