Zero-Cost Capabilities: Retrofitting Effect Safety in Rust
Over the last several years, the Rust programming language has gathered a following among software developers for its robust memory safety features. Nevertheless, it remains susceptible to potentially harmful side effects in untrusted code and is therefore vulnerable to supply chain attacks. We wish to investigate whether preventing them by retroactively enforcing side effect safety is possible. In this extended abstract, we introduce Coenobita, a Rust library that prevents undesirable side effects using capabilities without additional performance overhead. Our goal was to implement statically enforced, zero-cost, and unobtrusive capabilities. To evaluate Coenobita’s practicality and effectiveness, we conducted two case studies porting popular Rust crates walkdir
and remove_dir_all
to Coenobita. Porting walkdir
required modifying or adding around 242 lines across three files originally containing 1800 lines total. Benchmarks were run on 46 tests provided in walkdir
and their equivalents in coenobita-walkdir
, demonstrating little change in runtime for most tests.
Wed 17 JanDisplayed time zone: London change
18:15 - 20:00 | |||
18:15 4mPoster | A Denotational Approach to Release/Acquire Concurrency Student Research Competition Yotam Dvir Tel Aviv University | ||
18:19 4mTalk | A Lean Formalization of Cedar Student Research Competition Bhakti Shah University of Chicago | ||
18:24 4mTalk | A Substructural Type and Effect System Student Research Competition Orpheas van Rooij Radboud University | ||
18:29 4mPoster | A type-safe generalized editor calculus (Extended Abstract) Student Research Competition Nikolaj Rossander Kristensen Department of Computer Science, Aalborg University, Benjamin Bennetzen Department of Computer Science, Aalborg University, Peter Buus Steffensen Department of Computer Science, Aalborg University, Andreas Tor Mortensen Department of Computer Science, Aalborg University | ||
18:34 4mPoster | Compilation Quotient (CQ): A Metric for the Compilation Hardness of Programming Languages Student Research Competition Vince Szabó Delft University of Technology | ||
18:38 4mPoster | Compositional Programming with Full Iso-recursive Types Student Research Competition Litao Zhou Shanghai Jiao Tong University; University of Hong Kong | ||
18:43 4mPoster | Differential Privacy in an Impure World Student Research Competition Damián Arquez University of Chile | ||
18:48 4mPoster | Effect handlers in Zig (extended abstract) Student Research Competition Alessio Duè University of Pisa | ||
18:53 4mTalk | Efficient Incremental Computation for Halide Student Research Competition Tyler Hou University of California, Berkeley Pre-print | ||
18:57 4mTalk | Embedding Pointful Array Programming in Python Student Research Competition Jakub Bachurski University of Cambridge | ||
19:02 4mPoster | Exploring the limitations of Contextual Modal Type Theory for Multi-Stage Programming Student Research Competition Theo Wang University of Oxford | ||
19:07 4mPoster | From Java to Kotlin with Contextual Equality Saturation Student Research Competition Alexandre Drewery INRIA | ||
19:12 4mPoster | GPU-Accelerated Synthesis of Boolean Circuits Student Research Competition Justin Du University of California, San Diego, Rana Lulla University of California San Diego, Melody Ruth University of California San Diego | ||
19:17 4mTalk | HOL4P4: A Heapless Small-Step Semantics and Type System for P4 Student Research Competition Anoud Alshnakat KTH Royal Institute of Technology, Roberto Guanciale KTH Royal Institute of Technology, Mads Dam KTH | ||
19:21 4mPoster | Linking Session-Typed Channels in Separation Logic Student Research Competition Thomas Somers Radboud University | ||
19:26 4mPoster | Optimization of a Gradual Verifier: Lazy evaluation of Iso-recursive Predicates as Equi-recursive at Runtime Student Research Competition Jan-Paul Ramos-Davila Cornell University | ||
19:31 4mPoster | Optimization of the Context-Free Language Reachability Matrix-Based Algorithm Student Research Competition Ilya Muravjov Saint Petersburg State University | ||
19:36 4mPoster | PiR (πr): Probabilistic Interpretation of Robustness Student Research Competition Abhinandan Pal University of Birmingham | ||
19:40 4mTalk | Session-Typed Effect Handlers Student Research Competition Wenhao Tang University of Edinburgh | ||
19:45 4mPoster | Tail: A Typed and Structured Document Editor Student Research Competition Alperen Keles University of Maryland at College Park | ||
19:50 4mPoster | Towards programmatic reinforcement learning: the case of deterministic gridworlds Student Research Competition Guruprerana Shabadi École Polytechnique, Institut Polytechnique de Paris | ||
19:55 4mPoster | Zero-Cost Capabilities: Retrofitting Effect Safety in Rust Student Research Competition George Berdovskiy University of California, Davis |