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.
When designing an application, we often end up with domain-specific types, that all behold constraints that we try to enforce as much as possible: an age is positive, a delivery date can’t be in the past, etc. Modelling the data right is a part of the success of Scala and functional programming in general, but it also brings either boilerplate (we have to do again and again validation), or rely purely on conventions.
But there is hope. Meet the Iron library.
Iron is, a type constraint library that allows us to have a safe, declarative and smarter model. It enables us to have a continuous stream of valid data from our API endpoints to the database, and removed a whole class of bugs. Using advanced features like opaque types, inlines and the new macro system, it offers a true 0 cost, 0 dependency library that doesn't hamper compile time.
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.
Don't miss out on this opportunity to connect with Scalar community and create lasting memories
This talk aims to equip the audience with the minimum required bagage to get comfortable working with contravariance.
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.
Join me for a fun and possibly opinionated talk about the state of Scala and other JVM languages.