Skip to content
0:00 / 0:00

#scala#objectcapabilities#effects

Keynote: Making Capabilities Safe and Convenient - Martin Odersky | Lambda Days 2025

Code Sync

15K subscribers • 65 videos on Hallway

YouTube
  • Recommended by 1 person: 1 in engineering communities.
  • Presented by Martin Odersky, creator of Scala

Advanced. Deep dive for people who know the field.

3K views1 year ago1 recommendation

Programming languagesLanguage design and type systemsScala

Martin Odersky explains how Scala is evolving to make object capabilities both convenient to pass and safe to restrict at compile time.

✨ This talk was recorded at Lambda Days in June 2025. If you're curious about our upcoming event, check lambdadays.org ✨ Keynote: Making Capabilities Safe and Convenient 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. So why are object capabilities not used everywhere? I argue it's because they currently lack in both convenience and safety: Convenience: Passing all capabilities along long call chains to code that needs them can quickly get tedious. Safety: Access restrictions such as limited lifetimes or sharing are traditionally encoded using runtime mechanisms with the possibility of runtime failures. In Scala, we have been working on overcoming these two impediments. Convenience: capabilities can be passed as implicit parameters in using clauses, and capability passing can be completely abstracted over using context functions. Safety: We have extended the type system to track capabilities in types. Specifically, we track which capabilities are closed over in a lambda or object. I will report on the initial usage experience with these concepts and the measures we took to make the notations ergonomic. Let's keep in touch! Follow us on: 💥BlueSky: bsky.app/profile/lambdadays.bsky.social 💥LinkedIn: linkedin.com/company/lambda-days 💥Facebook: facebook.com/lambdadays 💥Mastodon: genserver.social/codesync 💥Twitter: twitter.com/LambdaDays

Why it's here

1 person recommends this

What people say. Recommended as an essential talk on the future of capabilities and effect tracking in Scala.

u/k1v1uqin r/scala • Recommends

Keynote: Making Capabilities Safe and Convenient - Martin Odersky | Lambda Days 2025