In this talk, we will take a tour around the `error` function. Starting from the simple use-cases and ending up with sophisticated yet developer-friendly error messages.
Among the many new features that landed in Scala 3, one of the lesser-known ones is the `compiletime.error` function. This seemingly simple function lets us define custom compile-time errors, bringing us a great leap forward in Scala's ability to provide developer-friendly compile-time safety.
But nothing is without complication. Despite the benefits, to fully utilize the power of the `error` function, for better or for worse, one has to take a deep dive into Scala's novel compile-time programming techniques. And what an exciting dive it is.
In this talk, we will take a tour around the `error` function. Starting from the simple use-cases and ending up with sophisticated yet developer-friendly error messages. Guided by a practical example, we will see how and why we can use the `error` function, as well as the accompanying compile-time programming techniques that will allow our error messages to really shine.
Let's write a game in Scala Native, for Playdate!
We managed to alleviate almost entirely the slowdown induced by Tapir in a web socket server. The journey towards this goal was quite insightful, and we would like to share it with you.
I would like to go over the most relevant tools and changes that can improve your developer experience.