Concurrent and parallel programming is difficult due to the presence of memory side-effects, which may introduce data races. Type qualifiers, such as reference capabilities, can remove data races by restricting sharing of mutable data. Unfortunately, reference capability languages are an all-in or nothing game, i.e., all the types must be annotated with reference capabilities. In this work in progress, we propose to mix the ideas from the reference capability literature with gradual typing, leading to gradual reference capabilities.
Dr Kiko Fernandez-Reyes
Software Engineer at Klarna. Previously, I was part of the programming languages research group at Uppsala University with specialisation in concurrent and functional programming languages, type systems, and formal methods, core developer of the actor-based Encore programming language, and main lecturer of the course Advanced Software Design at Uppsala University.