Learn about opaque types and add this new tool to your modelling toolbox!

Types are a programmer's best friend. In the pursuit of a perfect world, we try to model our domains in such a way that the type system makes incorrect data impossible. In Scala 2, we have tools like type aliases, value classes or Refined Types. In Scala 3, there's something new for this purpose - opaque type aliases. What do they bring to the table? Will they make our life easier? Do they have any drawbacks? Join this live demo session to learn all that and add this new tool to your modelling toolbox!
Scala is improving rapidly. This session will give you the perspective of someone in the middle of these changes.
We will look into three less-understood, yet (arguably) extremely useful constructs introduced in Cats Effect 3: Dispatcher, Supervisor, IOLocal
Let's take a look at the issues that enums have in Scala 2 and whether we found the Holy Grail with the introduction of Scala 3.
Understanding the exact properties that disqualify a data type from being an instance of a given abstraction turns out to be surprisingly helpful
How Libretto, a Scala DSL for concurrent programming, can be used for writing custom stream operators