More details can be found in the PLDI paper.
Bringing Fearless Concurrency to the Masses
Publications
Building Bridges: Safe Interactions with Foreign Languages through Omniglot
    
    19th USENIX Symposium on Operating Systems Design and Implementation,
    
    2025
  
  
A flexible type system for fearless concurrency
    
    This paper proposes a new type system for concurrent programs, allowing threads to exchange complex object graphs without risking destructive data races. While this goal is shared by a rich history of past work, existing solutions either rely on strictly enforced heap invariants that prohibit natural programming patterns or demand pervasive annotations even for simple programming tasks. As a result, past systems cannot express intuitively simple code without unnatural rewrites or substantial annotation burdens. Our work avoids these pitfalls through a novel type system that provides sound reasoning about separation in the heap while remaining flexible enough to support a wide range of desirable heap manipulations. This new sweet spot is attained by enforcing a heap domination invariant similarly to prior work, but tempering it by allowing complex exceptions that add little annotation burden. Our results include: (1) code examples showing that common data structure manipulations which are difficult or impossible to express in prior work are natural and direct in our system, (2) a formal proof of correctness demonstrating that well-typed programs cannot encounter destructive data races at run time, and (3) an efficient type checker implemented in Gallina and OCaml.
    
  
  
  
    
    PLDI 2022: Proceedings of the 43rd ACM SIGPLAN International Conference on Programming Language Design and Implementation,
    
    2022
  
  
Talks
Programming Distributed Systems
    
    Careful Language Design builds Better Systems
    
  
  
A New Type System for Fearless Concurrency
    
    Presenting a new type system for Fearless Concurrency
    
  
  
A developer-centric approach to Fearless Concurrency
    
    Presenting a new type system for Fearless Concurrency
    
  
  
Fearless Concurrency PLDI Talk
    
    Presenting a new type system for Fearless Concurrency