I propose that we can extend Mirrors to operations, and use the most natural DSL of all - plain trait definitions.

Can we derive endpoints from just a trait definition? One of Scala's strengths is domain modelling, and from a data definition, we can derive generic information in a Mirror, e.g. to generate type classes. For operations (such as endpoints) there is less support from metaprogramming, so we often create DSLs to describe them. I propose that we can extend Mirrors to operations, and use the most natural DSL of all - plain trait definitions.
Let's write a game in Scala Native, for Playdate!
In this talk, we’ll show first the different techniques we can use to apply constraints is our domains. Then, we’ll present Iron, its features, extensions, and integrations. We’ll finish by showcasing a fully integrated constraint-enforcing app.
In this talk, I will cover three key concepts that emerged from reflecting on this past year of learning: making mistakes, helping others to help you and finding community.
This talk is my slightly expanded version of that statement, and should hopefully understand what "Free" is, what purpose it serves and where it came from.