kirancodes.me
To Proof Maintenance & Beyond!

Safe Low-Level Code Without Overhead is Practical

Solal Pirelli, George Candea

Abstract

Developers write low-level systems code in unsafe programming languages due to performance concerns. The lack of safety causes bugs and vulnerabilities that safe languages avoid. We argue that safety without run-time overhead is possible through type invariants that prove the safety of potentially unsafe operations. We empirically show that Rust and C# can be extended with such features to implement safe network device drivers without run-time overhead, and that Ada has these features already.

BibTeX
@inproceedings{Pirelli-Candea:ICSE23,
  author    = {Solal Pirelli and
               George Candea},
  title     = {Safe {Low-Level} Code Without Overhead is Practical},
  booktitle = {ICSE},
  pages     = {2173--2184},
  publisher = {{IEEE}},
  year      = {2023},
}

Related papers