During the talk, we’ll build a small effect system using solely Scala 3 context functions step-by-step.
The direct style in Scala 3, influenced by languages like Kotlin and Rust, simplifies functional programming by eliminating for-comprehension syntax on higher-kinded types. It offers an imperative approach supported by context functions.
While some many Scala developers support it, others prefer the traditional functional styles used in libraries like Cats Effect and ZIO, which manage effects differently. The potential of combining Algebraic Effects and Handlers with Scala 3's direct style opens new possibilities for exploring different programming paradigms and libraries.
During the talk, we’ll build a small effect system using solely Scala 3 context functions step-by-step. With some enhancements to the common approach, we’ll discover that adding for-comprehension capabilities to such a system is possible, ending with a system that can express the same program using either direct style syntax or monad style.
In this talk, I will discuss why it's hard to use the power of RT to test side-effect-heavy apps.
In this talk I will explain the inner workings of an organisation that goes into releasing, maintaining and developing Scala and core parts of its ecosystem.
I will demonstrate how Pillars can take you from zero to production in record time. By leveraging Pillars’ integration of well-known libraries, you can bypass the usual complexities of setting up observability (traces, metrics, and logs), database access, API calls, and feature flag management.
In this talk, we'll cover the essentials of macros, why they are useful, why you should care about them, and how to become as good as you need with them for practical purposes.