-
Notifications
You must be signed in to change notification settings - Fork 1k
Description
In an effort to unify the Scala 2 and Scala 3 documentation, we would like the current Scala 3 Book to become a complete documentation of Scala, describing the whole language and detailing the specificities of Scala 2 and Scala 3 when needed. Ultimately, it will be renamed to just “Scala Book”.
To get there, we must carefully read every page of the Scala 2 book and check that its content is fully covered by its corresponding page in the Scala 3 book. If something is missing, that should be added to the Scala 3 book. And if there is no corresponding page in the Scala 3 book, it should be added to it (possibly marked as Scala 2 specific if needed).
See also #2481 for a similar issue on the unification of the Scala 2 and Scala 3 documentation.
Here is a checklist that tracks our progress.
- Introduction
- Prelude꞉ A Taste of Scala
- Preliminaries
- Scala Features
- Hello, World
- Hello, World - Version 2
- The Scala REPL
- Two Types of Variables
- The Type is Optional
- A Few Built-In Types
- Two Notes About Strings
- Command-Line I/O
- Control Structures
- The if/then/else Construct
- for Loops
- for Expressions
- match Expressions
- try/catch/finally Expressions
- Scala Classes
- Auxiliary Class Constructors
- Supplying Default Values for Constructor Parameters
- A First Look at Scala Methods
- Enumerations (and a Complete Pizza Class)
- Scala Traits and Abstract Classes
- Using Scala Traits as Interfaces
- Using Scala Traits Like Abstract Classes
- Abstract Classes
- Scala Collections
- The ArrayBuffer Class
- The List Class
- The Vector Class
- The Map Class
- The Set Class
- Anonymous Functions
- Common Sequence Methods
- Common Map Methods
- A Few Miscellaneous Items
- Tuples
- An OOP Example
- sbt and ScalaTest
- The most used scala build tool (sbt)
- Using ScalaTest with sbt
- Writing BDD Style Tests with ScalaTest and sbt
- Functional Programming
- Pure Functions
- Passing Functions Around
- No Null Values
- Companion Objects
- Case Classes
- Case Objects
- Functional Error Handling in Scala
- Concurrency
- Scala Futures
- Where To Go Next