Scala is a relatively new programming language for the Java virtual machine that interoperates nicely with Java libraries. Scala is statically typed, so the resulting applications are fast and reliable. Scala is more powerful than Java while offering a simpler conceptual model. Many of Scala's features come from the functional programming paradigm. This session will not be a comprehensive coverage of Scala, rather the coverage will be selective. This talk will not assume any Scala knowledge.
After this talk, the audience should:
* Understand the Scala type system
* Understand Scala traits and inheritance
* See how functional programming is relevant and used in Scala
* See how Scala actors are used for concurrencyWhen I initially looked at Scala, I mostly focused on its syntax and similarities and differences with Java. I think what might really interest me about Scala now is its functional programming support and its dealing with concurrency via actors. The abstract indicates that these two areas will be covered in this presentation.
Reynolds has presented a presentation of the same title ("A Brief Introduction to Scala") at the Houston TechFest 2009. He has made the PDFs of the slides and associated examples available for download at his homepage. Although there are numerous presentations on JVM languages that will reference Scala (such as Polygot Programming in the JVM), it is nice to have a presentation that provides an overview and focus on Scala that also "will not assume any Scala knowledge." Another interesting Scala-focused presentation, "Scala and Clojure: JVM Languages", was previously canceled.