The Scala Experience
Abstract
Scala is a new general-purpose programming language that is fully interoperable with Java. It smoothly integrates features of object-oriented and functional languages. Scala allows a terseness of style comparable to scripting languages but has at the same time a strong and static type system. In this way, it can express common programming patterns in a concise, elegant, and type-safe way. Scala also allows for creation of Domain-Specific Languages that hide much of the complexity of traditional APIs from users. Combined with its ability to plug into existing Java environments, this makes it possible to construct higher-level interfaces to existing Java libraries (servlets, Spring beans, EJB, Swing, and more). Its Actors-based threading approach, combined with its functional preference for immutable values makes concurrent programming far simpler than what's present in Java. And its built-in XML support makes Scala natural for XML processing tasks, including Web Services. This tutorial will give an introduction to the Scala programming language, highlighting innovative features such as closures and pattern matching. The goal is to teach you enough Scala so that you can start using it for real work.
Speakers