The Scala Programming Language's Avatar

The Scala Programming Language

@scala-lang.org

A programming language that scales with you: from small scripts to large multiplatform applications. https://www.scala-lang.org

795
Followers
8
Following
130
Posts
02.12.2024
Joined
Posts Following

Latest posts by The Scala Programming Language @scala-lang.org

Preview
Migrating sbt plugins to sbt 2 with sbt2-compat plugin A case study of how sbt-assembly uses sbt2-compat to cross-build for sbt 1 and sbt 2, and a guide of how to use it for your own plugins.

๐Ÿ› ๏ธ sbt 2 is nearing stable release - letโ€™s migrate the plugin ecosystem together!
The newย sbt2-compat plugin was developed by the Scala Centerย to simplify cross-building sbt plugins for sbt 1 and sbt 2.
Learn more on how to migrate:

02.03.2026 13:33 ๐Ÿ‘ 12 ๐Ÿ” 2 ๐Ÿ’ฌ 0 ๐Ÿ“Œ 1
Scala Survey 2026 Turn data collection into an experience with Typeform. Create beautiful online forms, surveys, quizzes, and so much more. Try it for FREE.

Please take a quick 5โ€‘minute survey on Scala adoption and usage. Results will impact Scalaโ€™s roadmap, libraries, and tooling. Help shape the future of Scala!

Brought to you by VirtusLab and the Scala Center.

Survey: virtuslab.typeform.com/ScalaSurvey...

25.02.2026 16:32 ๐Ÿ‘ 5 ๐Ÿ” 3 ๐Ÿ’ฌ 0 ๐Ÿ“Œ 0
Preview
State of the TASTy reader and Scala 2.13 โ†” Scala 3 compatibility

The Scala 2.13 TASTy reader remains useful for migrations and consuming Scala 3 artifacts, but it will never be able to consume Scala 3.8 and later artifacts. Scala 3.7 is the last minor version whose artifacts will remain consumable from Scala 2.
details: scala-lang.org/blog/state-...

24.02.2026 22:51 ๐Ÿ‘ 0 ๐Ÿ” 0 ๐Ÿ’ฌ 0 ๐Ÿ“Œ 1
Preview
Scala Standard Library Process

After a long freeze, the Scala 3 standard library is again open to contributions. The main place for contributing is now the Scala 3 repository.
details and link to process document: www.scala-lang.org/blog/2026/0...

19.02.2026 03:33 ๐Ÿ‘ 7 ๐Ÿ” 1 ๐Ÿ’ฌ 0 ๐Ÿ“Œ 0
SCALA 26

Weโ€™re happy to announce that Scala Workshop 2026 will take place in Brussels, co-located with ECOOP! ๐ŸŽ‰

๐Ÿ“ Brussels, Belgium
๐Ÿ—“ Mon 29 Jun 2026
๐ŸŽ™๏ธ Submit your 1โ€“2 page talk proposal!
๐Ÿ•’ Deadline: 23 Mar 2026
๐Ÿ‘‰ 2026.workshop.scala-lang.org

#Scala #ScalaLang #ProgrammingLanguages #ECOOP

13.02.2026 17:51 ๐Ÿ‘ 6 ๐Ÿ” 3 ๐Ÿ’ฌ 0 ๐Ÿ“Œ 0
Preview
Recap of Advent of Code 2025 How the Scala community participated in the recent 2025 Advent of Code challenge

Advent of Code 2025 recap and sample solutions with explanations: www.scala-lang.org/blog/2026/0...
๐Ÿ’ก Consider recommending Advent of Code to Scala newcomers! Thereโ€™s much learning in solving the puzzles, and further learning in comparing the published solutions to your own.

13.02.2026 05:54 ๐Ÿ‘ 3 ๐Ÿ” 0 ๐Ÿ’ฌ 0 ๐Ÿ“Œ 0
Preview
Postmortem of scala/scala3#24994

Postmortem on Scala 3.8.0: www.scala-lang.org/blog/post-m.... We are also working on a 3.8.2 release which will include a fix for scala/scala3#24673, which can cause some for comprehensions to behave incorrectly at runtime.

30.01.2026 16:11 ๐Ÿ‘ 5 ๐Ÿ” 3 ๐Ÿ’ฌ 0 ๐Ÿ“Œ 0

The Sovereign Tech Fund Invests in Scala:

๐Ÿ” security audits
๐Ÿ”ง sbt 2.0
๐Ÿ“š core library maintenance
๐Ÿ’ช and long-term resilience for critical digital infrastructure

Check out the announcement: www.scala-lang.org/b...

๐Ÿ™ Huge thanks to @sovereign.tech

27.01.2026 08:41 ๐Ÿ‘ 16 ๐Ÿ” 9 ๐Ÿ’ฌ 1 ๐Ÿ“Œ 1
Kacper Korban: On track with tracked [Scala Days 2025]
Kacper Korban: On track with tracked [Scala Days 2025] Dependent types greatly improve the expressiveness of the language, allowing to write safer programs and making more illegal states unrepresentable. Scala supports dependent typing for its functional programming constructs โ€” methods and functions. However, when it comes to the object-oriented side o

โœจ Tracking effects and dependencies can quickly get subtle. This talk explores what it means to stay โ€œon trackโ€ with tracked values and why it matters.
Hereโ€™s "On track with tracked" by Kacper Korban

09.01.2026 21:32 ๐Ÿ‘ 1 ๐Ÿ” 0 ๐Ÿ’ฌ 0 ๐Ÿ“Œ 0
Evan Czaplicki:  How to Grow More Functional Programmers [Scala Days 2025 Keynote]
Evan Czaplicki: How to Grow More Functional Programmers [Scala Days 2025 Keynote] How many companies miss out on functional languages because they do not know how to find functional programmers? After interviewing engineering leadership at four companies that have used Elm successfully, I found that they all independently chose to hire people without Elm experience and all got th

๐Ÿ” Growing functional programmers takes more than teaching syntax. This keynote reflects on how people actually learn FP and how to help that growth happen.
Watch "Keynote: How to Grow More Functional Programmers" from Evan Czaplicki

09.01.2026 20:08 ๐Ÿ‘ 2 ๐Ÿ” 1 ๐Ÿ’ฌ 0 ๐Ÿ“Œ 0
Jakob Odersky: MeshCI๏ผš defining and running workflows in Scala [Scala Days 2025]
Jakob Odersky: MeshCI๏ผš defining and running workflows in Scala [Scala Days 2025] Automated workflows, such as continuous integration (CI) pipelines, deployment scripts, or cron jobs, are an essential part of any modern software project. There are a plethora of solutions for running these, ranging from classic Jenkins, to more modern solutions such as GitHub actions. These workfl

๐Ÿค– Workflows tend to sprawl unless theyโ€™re designed carefully. This session looks at defining and running workflows in Scala with MeshCI.
Check out "MeshCI: defining and running workflows in Scala" from Jakob Odersky

09.01.2026 18:51 ๐Ÿ‘ 1 ๐Ÿ” 0 ๐Ÿ’ฌ 0 ๐Ÿ“Œ 0
Arman Bilge: A Typelevel retrospective [Scala Days 2025]
Arman Bilge: A Typelevel retrospective [Scala Days 2025] Typelevel is an ecosystem of projects and a community of people united to foster an inclusive, welcoming, and safe environment around functional programming in Scala. I first started contributing in 2021 and have since watched the seemingly exponential growth of our community and of our tech stack,

๐Ÿงช The Typelevel ecosystem has shaped how many of us write Scala today. This talk looks back at where it started, what it became, and what we learned along the way.
Hereโ€™s "A Typelevel retrospective" by Arman Bilge

09.01.2026 15:53 ๐Ÿ‘ 3 ๐Ÿ” 0 ๐Ÿ’ฌ 0 ๐Ÿ“Œ 0
Business4s: Bridging the gap between devs and the business [Scala Days 2025]
Business4s: Bridging the gap between devs and the business [Scala Days 2025] Developers love technicalities: type safety, performance, elegant abstractions. But too often, we end up building beautiful systemsโ€ฆ that solve the wrong problem. This talk is how we are making Scala a first-class language for boring business software โ€” the kind that actually runs companies and make

๐Ÿ’ก Bridging the gap between code and business requirements is rarely clean or straightforward. This talk looks at Business4s to connect developers and business thinking.
Watch "Business4s: Bridging the Gap Between Devs and the Business" from Voytek Pituล‚a

09.01.2026 14:30 ๐Ÿ‘ 1 ๐Ÿ” 0 ๐Ÿ’ฌ 0 ๐Ÿ“Œ 0
Regenesca - Refactoring Generator of Source Code for Scala
Regenesca - Refactoring Generator of Source Code for Scala โ€œRefactoring Generatorsโ€ is an interesting approach to generate scala source code. And not only that, but it will also refactor your code if it needs to. Think โ€œgit mergeโ€ but for scala code. Think scalafix but rules are per file, not global. Core library that does the diff+merge: https://github.co

โœจ Large codebases donโ€™t refactor themselves. This session explores Regenesca and how automated source-code refactoring can help keep Scala projects maintainable.
Hereโ€™s "Regenesca - Refactoring Generator of Source Code for Scala" by Sakib Hadลพiavdiฤ‡

09.01.2026 13:03 ๐Ÿ‘ 2 ๐Ÿ” 1 ๐Ÿ’ฌ 0 ๐Ÿ“Œ 0
Ralf Jung: What's the deal with unsafe Rust? [Scala Days 2025 Keynote]
Ralf Jung: What's the deal with unsafe Rust? [Scala Days 2025 Keynote] Rust is primarily known for its ownership-based type system that enables a low-level programming paradigm in a type-safe language. However, another key pillar of Rust is its treatment of unsafe code: while most languages tend to shun unsafe operations, often leaving them poorly specified, Rust gives

๐Ÿ’ก Unsafe Rust raises strong opinions for a reason. This keynote digs into what โ€œunsafeโ€ really means, why it exists, and how to reason about it.
Check out "Keynote: What's the deal with unsafe Rust?" from Ralf Jung

09.01.2026 11:35 ๐Ÿ‘ 2 ๐Ÿ” 0 ๐Ÿ’ฌ 0 ๐Ÿ“Œ 0
Tomas Mikula: Just Import 'N' Go - Spec first APIs without codegen [Scala Days 2025]
Tomas Mikula: Just Import 'N' Go - Spec first APIs without codegen [Scala Days 2025] Imagine having native support for OpenAPI and/or other API specification languages built into your programming language. By merely importing a specification document, we would obtain a typed interface to a remote service, ready to be used, without the accidental complexity of dealing with HTTP or (d

โœจ Spec-first APIs donโ€™t have to mean heavy code generation. This session shows how far you can get by leaning on imports and types instead.
Hereโ€™s "Just Import 'N' Go: Spec-first APIs without codegen" by Tomas Mikula

08.01.2026 19:53 ๐Ÿ‘ 1 ๐Ÿ” 1 ๐Ÿ’ฌ 0 ๐Ÿ“Œ 0
Jan-Pieter van den Heuvel: Level Up, Become a Compiler Engineer [Scala Days 2025]
Jan-Pieter van den Heuvel: Level Up, Become a Compiler Engineer [Scala Days 2025] Level Up: Become a Compiler Engineer (and a Better Programmer) Have you ever wondered what really happens under the hood of your Scala code? Join me for a practical introduction to compiler engineering through the lens of the Scala compiler. Drawing from my two years of experience participating in t

๐Ÿงช Curious how compilers actually work under the hood? This talk makes a case for learning compiler engineering as a way to become a stronger programmer overall.
Hereโ€™s "Become a Compiler Engineer (and a Better Programmer)" by Jan-Pieter van den Heuvel

08.01.2026 18:27 ๐Ÿ‘ 3 ๐Ÿ” 0 ๐Ÿ’ฌ 0 ๐Ÿ“Œ 0
Eugene Yokota: sbt 2 0๏ผš go big [Scala Days 2025]
Eugene Yokota: sbt 2 0๏ผš go big [Scala Days 2025] This is going to be a debut talk of sbt 2.0, a Scala 3 rewrite of sbt, which I have been working on for the last few years (in my free time) with the help of Scala Center and other volunteers. Given that sbt 1.x already exists, and itโ€™s the most widely-used build tool in Scala, we wanted to take big

๐Ÿค– sbt 2.0 is a major shift under the hood. This session dives into whatโ€™s changing, why it matters, and what โ€œgoing bigโ€ really means.
Check out "sbt 2.0: go big" from Eugene Yokota

08.01.2026 16:39 ๐Ÿ‘ 5 ๐Ÿ” 1 ๐Ÿ’ฌ 0 ๐Ÿ“Œ 1
Cao Nguyen Pham: The first steps towards practical capture checking [Scala Days 2025]
Cao Nguyen Pham: The first steps towards practical capture checking [Scala Days 2025] Capture Checking is the next significant feature of Scala, promising a safe and scalable paradigm to write effectful programs using capabilities. Over the past few years, its development has been rapidly progressing, on both theoretical foundations and implementation within the Scala 3 compiler. How

๐Ÿ” Capture checking keeps moving from theory toward practice. This talk focuses on the first concrete steps and what they enable in real Scala code.
Watch "The first steps towards practical capture checking" from Cao Nguyen Pham

08.01.2026 14:30 ๐Ÿ‘ 3 ๐Ÿ” 0 ๐Ÿ’ฌ 0 ๐Ÿ“Œ 0
Joan Goyeau: Designing the library powering Netflix's QoE with Scala 3 [Scala Days 2025]
Joan Goyeau: Designing the library powering Netflix's QoE with Scala 3 [Scala Days 2025] As Netflix expanded, the accumulation of diverse business metrics such as hours streamed, play delay, and rebuffers became increasingly complex, with contributions from a wide array of teams, from Data Scientists to Client Engineers. To address this complexity, Netflix required a centralized solutio

๐Ÿ’ก Building libraries that run at Netflix scale comes with very real constraints. This talk walks through designing a Scala 3 library that powers QoE systems in production.
Watch "Designing the library powering Netflix's QoE with Scala 3" from Joan Goyeau

08.01.2026 13:14 ๐Ÿ‘ 3 ๐Ÿ” 0 ๐Ÿ’ฌ 0 ๐Ÿ“Œ 0
Priyanka Bose: From Paradigms to Percussion - A Beginnerโ€™s parallel Journey   [Scala Days 2025]
Priyanka Bose: From Paradigms to Percussion - A Beginnerโ€™s parallel Journey [Scala Days 2025] From Paradigms to Percussion: A Beginnerโ€™s parallel Journey (and struggles) with Scala and Drums Learning a new programming language can feel overwhelmingโ€”so can learning to play a musical instrument. Around the same time I picked up Scala at work, I picked up a pair of drumsticks at home. I didnโ€™t

๐Ÿ’ก Learning Scala isnโ€™t always a straight line. This talk shares a personal journey through Scala and drumming, with all the parallels, struggles, and small wins along the way.
Check out "From Paradigms to Percussion:" from Priyanka Bose

07.01.2026 19:16 ๐Ÿ‘ 2 ๐Ÿ” 0 ๐Ÿ’ฌ 0 ๐Ÿ“Œ 0
Martin Odersky๏ผš Where Are We With Scala's Capabilities? [Scala Days 2025 Keynote]
Martin Odersky๏ผš Where Are We With Scala's Capabilities? [Scala Days 2025 Keynote] The object capability model has been established since the 1960s. It is probably the most obvious and clean way to protect trusted from untrusted components in a complex system. Capabilities are a unifying concept for many aspects of programming, including permissions, effects, and resources. They c

โœจ Big-picture questions matter just as much as new features. This keynote reflects on where Scala stands today and how its capabilities are shaping real-world use.
Hereโ€™s "Keynote: Where Are We With Scala's Capabilities?" by Martin Odersky

07.01.2026 17:55 ๐Ÿ‘ 1 ๐Ÿ” 0 ๐Ÿ’ฌ 0 ๐Ÿ“Œ 0
A. Piquerez & B. Fourรฉ: Coding the game of unspoken rules in Scala 3 [Scala Days 2025]
A. Piquerez & B. Fourรฉ: Coding the game of unspoken rules in Scala 3 [Scala Days 2025] Coding the game of unspoken rules in Scala 3 What does it take to create a game where the rules are unknown, constantly evolving, and authored by the players themselves? Inspired by the chaotic and creative card game Mao, weโ€™ve built a multiplayer, browser-based game entirely in Scala 3: backend, f

๐Ÿ” Some systems run on rules nobody ever writes down. This session explores how to model and implement those unspoken rules using Scala 3.
Watch "Coding the game of unspoken rules in Scala 3" from Adrien Piquerez and Benoรฎt Fourรฉ

07.01.2026 16:31 ๐Ÿ‘ 3 ๐Ÿ” 1 ๐Ÿ’ฌ 0 ๐Ÿ“Œ 0
Noel Welsh: Routing Http Requests with Scala 3 [Scala Days 2025]
Noel Welsh: Routing Http Requests with Scala 3 [Scala Days 2025] Request routing is the problem of choosing a function to invoke based on a HTTP request. All but the simplest web frameworks include routing, but that doesnโ€™t mean that routing isnโ€™t an interesting problem. I set out to design a request routing library that was all of: * compositional; * type safe;

๐Ÿค– HTTP routing is one of those problems that looks simple until it isnโ€™t. This talk walks through routing HTTP requests using Scala 3, focusing on clarity and correctness.
Check out "Routing Http Requests with Scala 3" from Noel Welsh

07.01.2026 14:44 ๐Ÿ‘ 2 ๐Ÿ” 0 ๐Ÿ’ฌ 0 ๐Ÿ“Œ 0
Tomasz Godzik: Unleashing the Full Potential of Metals [Scala Days 2025]
Tomasz Godzik: Unleashing the Full Potential of Metals [Scala Days 2025] Based on my experience developing the Metals Scala language server, I realized that itโ€™s really difficult for most users to unlock itโ€™s full potential. While maintainers are aware of what might be happening and how to solve their issue itโ€™s not so simple for others. In this talk I wanted to describe

๐Ÿงช Tooling makes a huge difference in how Scala feels day to day. This session dives into Metals and how to get the most out of it.
Hereโ€™s "Unleashing the Full Potential of Metals" by Tomasz Godzik

07.01.2026 13:16 ๐Ÿ‘ 1 ๐Ÿ” 0 ๐Ÿ’ฌ 0 ๐Ÿ“Œ 0
Oron Port: Scala Chip Design from Z1R0 to H1R0 [Scala Days 2025]
Oron Port: Scala Chip Design from Z1R0 to H1R0 [Scala Days 2025] Curious about hardware design but think itโ€™s out of reach? This talk proves you can master it with Scalaโ€”no prior knowledge needed! Weโ€™ll: * Demystify hardware logic design from the ground up, making it accessible to all. * Unveil DFiant HDL (DFHDL), a Scala 3-powered, multi-abstraction hardware de

๐Ÿงช Scala sometimes ends up far from traditional software. This talk dives into chip design and how Scala was used from early ideas to real hardware.
Hereโ€™s "Scala Chip Design from Z1R0 to H1R0" by Oron Port

06.01.2026 20:23 ๐Ÿ‘ 2 ๐Ÿ” 0 ๐Ÿ’ฌ 0 ๐Ÿ“Œ 0
Spenger & Haller: Simple and Safe Pickling of Closures in Scala 3 [Scala Days 2025]
Spenger & Haller: Simple and Safe Pickling of Closures in Scala 3 [Scala Days 2025] More and more use cases in parallel and distributed programming are testing the limits of closures. Serializing/pickling closures/functions is incredibly powerful, but full of issues. Using the JVMโ€™s built-in serializer may result in strange outcomes and runtime-errors during deserialization. For ex

โœจ Serializing closures sounds risky, but it doesnโ€™t have to be. This session walks through a simple and safe approach to pickling closures in Scala 3.
Hereโ€™s "Simple and Safe Pickling of Closures in Scala 3" by Jonas Spenger and Philipp Haller

06.01.2026 18:48 ๐Ÿ‘ 3 ๐Ÿ” 0 ๐Ÿ’ฌ 1 ๐Ÿ“Œ 0
Oliver Braฤevac: Capture Checking - A New Approach to Effect Safety in Scala [Scala Days 2025]
Oliver Braฤevac: Capture Checking - A New Approach to Effect Safety in Scala [Scala Days 2025] Capture Checking is an upcoming feature that brings capability tracking into Scalaโ€™s type system, offering a new way to express and control effects in direct style, all without requiring monads or other heavy abstractions. This talk introduces the core ideas behind Capture Checking, how it fits int

๐Ÿ’ก Effect safety often stays abstract until you see a concrete model. This talk introduces Capture Checking and shows how it changes the way effects are tracked and reasoned about in Scala.
Check out the Scala Days talk from Oliver Braฤevac

06.01.2026 16:06 ๐Ÿ‘ 4 ๐Ÿ” 1 ๐Ÿ’ฌ 0 ๐Ÿ“Œ 0
M. Gorywoda: AI Tooling for Scala Developers - What JetBrains Brings to the Table [Scala Days 2025]
M. Gorywoda: AI Tooling for Scala Developers - What JetBrains Brings to the Table [Scala Days 2025] In the last few years, one of the leading new areas of development in JetBrains has been AI tooling. It started with simple access to an external Large Language Model within IntelliJ IDEA - but we didnโ€™t stop there. Today, JetBrains offers a wide range of new features and extensions that can make s

๐Ÿ” AI tools are starting to blend into everyday Scala workflows. This talk looks at what JetBrains is building and how it fits into real development.
Watch "AI Tooling for Scala Developers: What JetBrains Brings to the Table" from Maciej Gorywoda

06.01.2026 14:53 ๐Ÿ‘ 1 ๐Ÿ” 0 ๐Ÿ’ฌ 0 ๐Ÿ“Œ 0
Christian Hollinger: Using Scala in a Go First Company [Scala Days 2025]
Christian Hollinger: Using Scala in a Go First Company [Scala Days 2025] We introduced a very specialized Scala 3 project - a high-volume, real-time streaming pipeline for complex traffic data - at a company that does (practically) everything in go. Why would we do that? And would we do it again? In the overall Data Engineering world, go has very little foothold; Python

๐Ÿค– Many teams donโ€™t live in a Scala-only world. This session shares what itโ€™s like to use Scala inside a Go-first company and where it shines.
Check out "Using Scala in a Go-First Company" from Christian Hollinger

06.01.2026 13:30 ๐Ÿ‘ 4 ๐Ÿ” 1 ๐Ÿ’ฌ 0 ๐Ÿ“Œ 0