Checking Mutation and Separation in Scala 3
This talk describes an extension of Scala 3’s capture checking that treats mutable variables and data structures as capabilities. These capabilities are exclusive, they cannot be used at the same time under different aliases. We also introduce read capabilities, which give fractional permissions to access mutable data, and which can be shared. Separation checking ensures that only a single reference to an exclusive capability is available at any point in the computation.
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.
Mon 16 MarDisplayed time zone: Amsterdam, Berlin, Bern, Rome, Stockholm, Vienna change
15:30 - 17:00 | |||
15:30 45mTalk | Checking Mutation and Separation in Scala 3 VIMPL Martin Odersky EPFL | ||