Pancake: verified systems programming made sweeter
Authors
UNSW Sydney
Australia
Chalmers University of Technology
Gothenburg
Sweden
Australian National University
Canberra
Australia
Abstract
We introduce Pancake, a new language for verifiable, low-level systems programming, especially device drivers. Pancake eschews complex type systems to make the language attractive to systems programmers, while at the same time aiming to ease the formal verification of code. We describe the design of the language and its verified compiler, and examine its usability, performance and current limitations through case studies of device drivers and related systems components for an seL4-based operating system.
BibTeX Entry
@inproceedings{Pohjola_STWSNUMSMNH_23, address = {Koblenz, DE}, author = {Johannes {\AA}man Pohjola and Hira Taqdees Syeda and Miki Tanaka and Krishnan Winter and Tsun Wang Sau and Benjamin Nott and Tiana Tsang Ung and Craig McLaughlin and Remy Seassau and Magnus O. Myreen and Michael Norrish and Gernot Heiser}, booktitle = {Workshop on Programming Languages and Operating Systems (PLOS)}, month = oct, paperurl = {https://trustworthy.systems/publications/papers/Pohjola_STWSNUMSMNH_23.pdf}, title = {Pancake: Verified Systems Programming Made Sweeter}, year = {2023} }