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.
Enums are one of the language features that Scala 2 has been infamous for. The sole fact that there’s a number of approaches to implement enum-like behavior is already a warning light. Then, no matter which approach you choose - the built-in Enumeration, ADTs or an external library like Enumeratum - all of them have some drawbacks. Scala 3 has promised a revolution in the area of enums. In this talk we’re going to look at the issues that enums have in Scala 2 and whether we found the Holy Grail with the introduction of Scala 3.
Avoid mistakes in API design, implementation and evolution with Smithy
I'll share a handful of techniques that can help you avoid runtime errors and shift them to the realm of compile time
Learn about opaque types and add this new tool to your modelling toolbox!