Pony: Co-Designing a Type System and a Runtime
Pony is an actor-model, capabilities-secure, native programming language. I will talk about reference capabilities (a type system for data-race freedom influenced by object capabilities and deny guarantee reasoning), the ORCA and MAC protocols for fully…
Debugging Machine Learning Tasks
Minimizing Faulty Executions of Distributed Systems
When a bug is found in a long-running distributed system, developers typically start by identifying (i) which events in the execution caused their system to arrive at the unsafe state, and (ii) which events are…
Stamping Out Concurrency Bugs
The shift to multi-core architectures in the past ten years pushed developers to write concurrent software to leverage hardware parallelism. The transition to multi-core hardware happened at a more rapid pace than the evolution of…
Memory Mutation Testing
Stamping Out Concurrency Bugs
The shift to multi-core architectures in the past ten years pushed developers to write concurrent software to leverage hardware parallelism. The transition to multi-core hardware happened at a more rapid pace than the evolution of…