LOADING

Custom Compile-Time Errors With a Vengeance

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.

Daniel Beskin
Daniel is a somewhat functional developer who's convinced that the best way to learn something is to teach it.
About This Talk

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.

more great talks

Might Be Interesting

Day 2
  —  
9:00 am
arrow pointing right icon

Contravariance: intuition building and examples

This talk aims to equip the audience with the minimum required bagage to get comfortable working with contravariance.

Day 1
  —  
5:00 pm
arrow pointing right icon

Exploring Build Caching: A Practical Overview

In this talk, we will start with the basics, understanding what build caching is and why it can be a bit tricky to handle in real projects.

Day 1
  —  
2:00 pm
arrow pointing right icon

How slow is your tram?

In this beginner-friendly talk we'll try to find out using the power of Scala and functional programming techniques.

Day 2
  —  
4:00 pm
arrow pointing right icon

Growing Oxen: channel operators and retries

In this session, I will guide you through two recent additions to Ox that I helped implement: channel operators and retries.

Day 1
  —  
9:30 am
arrow pointing right icon

Mirrors for operations, not data

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

See All Events
Join us!

We're looking for amazing speakers.
CFP is open till 10.01.2023

Fill in Call for Papers
location icon

Location

Centrum Konferencyjne POLIN, Poland
stay in touch icon

Follow Us

Contact Us