Understanding the exact properties that disqualify a data type from being an instance of a given abstraction turns out to be surprisingly helpful
Abstractions such as functor, monads... are often explained by example, which I think is only half of what's needed to build a solid intuition. The other half is counter-examples: things that *aren't* things. This talk intends to fill that void, by going through the list of common abstractions and showing types that are, say, a functor, but not an applicative. While this may sound more like a toy than something useful, understanding the exact properties that disqualify a data type from being an instance of a given abstraction turns out to be surprisingly helpful, and have certainly allowed me to go further in my study of such things.
Learn about opaque types and add this new tool to your modelling toolbox!
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.
As WebAssembly matures and gets more and more traction from the community, you might wonder can Scala join that trend?