LOADING

Type-Classes (in Scala 3)

We'll explore type classes in Scala 3, using its new rules for givens, extension methods, and mechanisms for automatic derivation via mirrors or macros.

Alexandru Nedelcu
Team Lead at ING Bank, Romania
About This Talk

Type classes are a Scala superpower, and yet are underused in application code. Compared with OOP-based designs, type classes unlock “parametricity”, meaning polymorphic functions whose type signatures describe their behavior, making code more expressive, safer, and more predictable. This matters even more in the age of AI agents, because more mistakes can be caught at compile time, shortening the feedback loop and speeding up convergence toward a working solution.

We'll explore type classes in Scala 3, using its new rules for givens, extension methods, and mechanisms for automatic derivation via mirrors or macros.

more great talks

Might Be Interesting

Day 1
  —  
2:35 pm
arrow pointing right icon

Beyond `flatMap`: Is Kyo the Future of Scala Effects?

For nearly a decade, Scala's concurrency has been driven by Akka, Cats Effect and ZIO, each with its own vision for purity, safety, and pragmatism. Kyo enters this incredible ecosystem with a fresh perspective.This talk provides a critical, technical comparison of these systems through a unified framework.

Day 1
  —  
2:00 pm
arrow pointing right icon

The Concurrency Triangle: Scala Fibers, Java Virtual Threads, and Kotlin Coroutines

Scala Fibers, Java Virtual Threads, and Kotlin Coroutines - this talk shows how this elegant solution manifests at three different abstraction levels.

Day 1
  —  
12:25 pm
arrow pointing right icon

Protobuf Goes Scala-First

Protobuf is commonly associated with code generation. However, in large projects with tens of thousands of message definitions, this approach can lead to an overwhelming amount of generated code. In this talk, I’ll share my journey in search of a different approach to this problem.

Day 1
  —  
4:50 pm
arrow pointing right icon

Effects as Capabilities

When writing software, we currently seem to have to choose between an imperative style - easy to read and write, hard to reason about - and a monadic style - hard to read and write, easy to reason about.This talk is about being greedy and getting the best of both worlds, because we deserve it.

Day 1
  —  
3:10 pm
arrow pointing right icon

Controlled Concurrency Testing for Scala

This talk presents McCCT, a new concurrency testing tool developed at KTH by the speakers in the context of an ongoing research project.

Day 1
  —  
11:15 am
arrow pointing right icon

Cyfra: Scala on GPU

Learn how to accelerate Scala code by orders of magnitude with Cyfra.

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