Your country

Tools that support it use your country for local currency, number formats, units and paper size. Your choice is saved only in this browser.

Type a name or a two-letter code. Use the up and down arrow keys to move through the countries, Enter to choose one and Escape to close.

Programming languages

Scala 3

The planned outline of 16 modules. Lessons are written, run and reviewed before they are published.

Coming soon 16 modules

Coming soon. This track is being written. Below is its planned outline: a lesson appears here once its examples have been run and its technical review is signed off.

Planned outline

  1. Module 1

    Start here: Scala 3.9 LTS on the JVM

    Coming soon
  2. Module 2

    Basics: values, numbers, text and control flow

    Coming soon
  3. Module 3

    Domain modelling: classes, traits, case classes and enums

    Coming soon
  4. Module 4

    Functions and functional programming

    Coming soon
  5. Module 5

    Errors, absence, resources and for-comprehensions

    Coming soon
  6. Module 6

    The collections library

    Coming soon
  7. Module 7

    The type system in practice

    Coming soon
  8. Module 8

    Contextual abstractions: extensions, givens and type classes

    Coming soon
  9. Module 9

    Inline and metaprogramming

    Coming soon
  10. Module 10

    Everyday programs: files, JSON, HTTP, web and databases

    Coming soon
  11. Module 11

    Concurrency: threads, Futures, direct style, effects and actors

    Coming soon
  12. Module 12

    Build, test and ship

    Coming soon
  13. Module 13

    Java interop, upgrades and migration

    Coming soon
  14. Module 14

    Data engineering with Spark and Scala

    Coming soon
  15. Module 15

    Beyond the JVM, library design and the language frontier

    Coming soon
  16. Module 16

    Interview preparation and practice

    Coming soon

Official documentation

More in Programming languages

Quick answers and tool search

Type to search tools or to get a quick answer, for example 18% of 2500. Use the up and down arrow keys to move through the results, Enter to choose, and Escape to close.