In this talk, we'll cover the essentials of macros, why they are useful, why you should care about them, and how to become as good as you need with them for practical purposes.
Scala 3 macros are some of the least understood parts of the language, and some of the most powerful. In this talk, we'll cover the essentials of macros, why they are useful, why you should care about them, and how to become as good as you need with them for practical purposes.
You will understand:
- why inlines are great but often not sufficient
- the mechanics of a macro
- how to manipulate programs as values
- how to surface custom errors in the compiler
- essential pieces you can work with, including terms, symbols, types, trees and expressions
- how to make useful libraries with macros
- practical examples of macros at work
This talk will be a quick introduction to the Unison "paradigm" and language, from the perspective of a long-standing Scala programmer.
During the talk, we’ll build a small effect system using solely Scala 3 context functions step-by-step.
In this presentation you will learn the source of your issues, and a third way - sanely-automatic derivation which is fast to compile, fast to run, and easy to debug by its users.
In this talk, I'd like to share how the Iron library and features from Scala 3 helped us build a solution which is safer, more robust, and easier to maintain.