Capture checking is a type system task that ensures resource and effect safety of programs. The capture checker is now part of Scala’s compiler where it plays a role roughly analogous to borrow checking in Rust. Like Rust’s borrow checker, the capture checker in scalac runs as a separate pass after type checking. In my talk I do a deep dive into the algorithms and architecture of the capture checker, and discuss how it is embedded into the compiler as a whole.
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.
Sat 20 JanDisplayed time zone: London change
09:00 - 10:30 | |||
09:00 60mKeynote | Inside the Scala Capture Checker WITS Martin Odersky EPFL | ||
10:00 30mTalk | Binding Syntax for Dependently-Typed Programs WITS Andre Videla University Of Strathclyde |