LOADING

Contravariance: intuition building and examples

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

Sophie Collard
About This Talk

Contravariance can throw many developers off the first time they run into it. This talk aims to equip the audience with the minimum required bagage to get comfortable working with contravariance. We'll begin by building up intuition for what it means for a type parameter to be in contraviariant position, before moving on to concrete examples.

more great talks

Might Be Interesting

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.

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
  —  
5:30 pm
arrow pointing right icon

Generative Art with Scala, No AI Required

In this talk, we will demonstrate some elegant applications of functional programming in Scala, with even more elegant visual results - all with live code and real-time output.

Day 1
  —  
11:30 am
arrow pointing right icon

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.

Day 2
  —  
2:30 pm
arrow pointing right icon

Armored Type Safety with Iron

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.

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