ICFP 2024
Mon 2 - Sat 7 September 2024 Milan, Italy
Wed 4 Sep 2024 09:00 - 10:00 at Green 1-2-3 - Wednesday keynote Chair(s): Andrew Kennedy

Today’s server-side programs use sophisticated abstractions for effects such as scheduling parallel and asynchronous computations, error handling, or resource management. Capabilities are a convenient way to structure such computations and establish their safety. The object-capability model, which at its core is more than 50 years old, is currently experiencing a renaissance as an inspiration for new type systems that manage effects. It turns out that a capability-based approach can solve sticky problems about effect polymorphism, including the “what color is your function?” problem. In my talk I show how we can use capabilities to model effects, how we can control the lifetime of capabilities, and how that provides a simple and expressive foundation to compose control effects flexibly.

Martin Odersky is a professor at EPFL in Lausanne, Switzerland. He has been working on programming languages for most of his career. He first studied structured and object-oriented programming as a PhD student of Niklaus Wirth, then fell in love with functional programming while working as a post doc at IBM and Yale. When Java came out, he started to add functional programming constructs to the new platform. This led to Pizza and GJ and eventually to Java 5 with generics. During that time he also developed javac, the current reference compiler for Java.

Over the last 10 years, Martin worked on unifying object-oriented and functional programming in the Scala language. Scala quickly escaped from the research lab and became a popular open source tool and industrial language. He now oversees development of Scala as head of the programming group at EPFL and as academic director of the Scala center.

Wed 4 Sep

Displayed time zone: Amsterdam, Berlin, Bern, Rome, Stockholm, Vienna change

09:00 - 10:00
Wednesday keynoteICFP Papers and Events at Green 1-2-3
Chair(s): Andrew Kennedy Facebook London
09:00
60m
Keynote
Capabilities for Control
ICFP Papers and Events