The name Scala
stands for "scalable language." The language is so named because it was designed
to grow with the demands of its users. You can apply Scala to a wide range of
programming tasks, from writing small scripts to building large systems. This
page covers the following topics related to Scala : Introduction, A Scalable
Language, First Steps in Scala, Next Steps in Scala, Classes and Objects, Basic
Types and Operations, Functional Objects, Built-in Control Structures, Functions
and Closures, Control Abstraction, Composition and Inheritance, Scala's
Hierarchy, Traits, Packages and Imports, Assertions and Unit Testing, Case
Classes and Pattern Matching, Working with Lists, Collections, Stateful Objects,
Type Parameterization, Abstract Members, Implicit Conversions and Parameters,
Implementing Lists, For Expressions Revisited, Extractors, Annotations, Working
with XML, Modular Programming Using Objects, Object Equality, Combining Scala
and Java, Actors and Concurrency, Combinator Parsing, GUI Programming, The
SCells Spreadsheet.
Author(s): Martin Odersky, Lex Spoon, and Bill Venners
The book is a concise guide to
Scala programming, covering fundamental concepts like variables, control
structures, and classes. It explores Scala features, including the REPL,
auxiliary constructors, and default parameter values and delves into practical
aspects such as strings and collections. Additionally, it introduces SBT and
Scala Test for application development and testing. Emphasizing both
object-oriented and functional programming, the book provides hands-on insights
into anonymous functions, tuples, error handling, and concurrency using Scala
Futures.
Programming Scala introduces
an exciting new language that offers all the benefits of a modern object model,
functional programming, and an advanced type system. The chapters covered in the
PDF are as follows : Zero to Sixty: Introducing Scala, Type Less, Rounding Out
the Essentials, Traits, Basic Object-Oriented Programming in Scala, Advanced
Object-Oriented Programming In Scala, The Scala Object System, Functional
Programming in Scala, Robust, Scalable Concurrency with Actors, Herding XML in
Scala, Domain-Specific Languages in Scala, The Scala Type System, Application
Design, Scala Tools, Libraries and IDE Support.