Code generation is one of the most promising applications of large language models (LLMs), offering substantial productivity boosts for developers. However, this benefit is tempered by serious concerns surrounding the correctness and security of the generated code - especially outside the happy path.

Code generation is one of the most promising applications of large language models (LLMs), offering substantial productivity boosts for developers. However, this benefit is tempered by serious concerns surrounding the correctness and security of the generated code - especially outside the happy path.
Several solutions have been put forward to mitigate this, ranging from agentic code review to exhaustive test generation to formal verification.
In this talk, I present evidence from our research that these approaches are not currently sufficient to mitigate those concerns and instead suggest an alternative, more viable path forward based on the Scala type system.
I conclude by offering an insight from the perspective of LLM developers on why this approach is working and how even more secure coding LLMs can be developed, thanks to Scala features.
In this presentation, I will demonstrate how we leveraged the strengths of Scala and TypeScript to develop a collaborative text editor that meets the strictest standards for security, performance, and real-time collaboration.
This will be a live coding demonstration of Scala's newest feature set: capture checking.
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.
In this talk, I’ll guide you through the crossroads where Scala intersects with AI, some applications aimed at boosting developer productivity, others focused on integrating your code with LLMs.
In this talk, I will introduce the highlights of what to look forward to in Scala 3.9 LTS, as well as how to think about the upcoming new release.
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.