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 our talk, we will introduce a novel approach to system design— TypeOps — in which the application and infrastructure layers are fused to provide unprecedented safety and productivity for Scala teams.
Don't miss out on this opportunity to connect with Scalar community and create lasting memories
This talk will introduce Mill: a newer build tool that does everything SBT does, but better. Faster, simpler, easier, Mill democratizes the build so you don't need to be a build tool expert to work on it.
Scala 3.6 stabilises the Named Tuples proposal in the main language. It gives us new syntax for structural types and values, and tools for programmatic manipulation of structural types without macros. Can we, and should we, push it to the limit? Of course! let's explore DSL's for config, data, and scripting, for a more dynamic feel.
In this presentation you will learn the source of your issues, and a third way - sanely-automatic derivation which is fast to compile, fast to run, and easy to debug by its users.