Training: "The Scala Experience - Programming with Functional Objects"
Time: Monday 13:00 - 16:00
Location: City Room
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 its main innovative features: closures, pattern matching, type abstraction, and mixins.