Wed 23 Oct 2024 12:00 - 12:20 at IBR West - Ownership, Security, and Privacy Chair(s): Tobias Wrigstad

Ownership and borrowing systems, designed to enforce safe memory management without the need for garbage collection, have been brought to the fore by the Rust programming language. Rust also aims to bring some guarantees offered by functional programming into the realm of performant system code, but the type system is largely separate from the ownership model, with type and borrow checking happening in separate compilation phases. Recent models such as RustBelt and Oxide aim to formalise Rust in depth, but there is less focus on integrating the basic ideas into more traditional type systems. An approach designed to expose an essential core for ownership and borrowing would open the door for functional languages to borrow concepts found in Rust and other ownership frameworks, so that more programmers can enjoy their benefits.

One strategy for managing memory in a functional setting is through uniqueness types, but these offer a coarse-grained view: either a value has exactly one reference, and can be mutated safely, or it cannot, since other references may exist. Recent work demonstrates that linear and uniqueness types can be combined in a single system to offer restrictions on program behaviour and guarantees about memory usage. We develop this connection further, showing that just as graded type systems like those of Granule and Idris generalise linearity, Rust’s ownership model arises as a graded generalisation of uniqueness. We combine fractional permissions with grading to give the first account of ownership and borrowing that smoothly integrates into a standard type system alongside linearity and graded types, and extend Granule accordingly with these ideas.

Wed 23 Oct

Displayed time zone: Pacific Time (US & Canada) change

10:40 - 12:20
Ownership, Security, and PrivacyOOPSLA 2024 at IBR West
Chair(s): Tobias Wrigstad Uppsala University
10:40
20m
Talk
Law and Order for Typestate with Borrowing
OOPSLA 2024
Hannes Saffrich University of Freiburg, Yuki Nishida Tohoku University, Peter Thiemann University of Freiburg, Germany
DOI
11:00
20m
Talk
Taypsi: Static Enforcement of Privacy Policies for Policy-Agnostic Oblivious Computation
OOPSLA 2024
Qianchuan Ye University at Buffalo, SUNY, Benjamin Delaware Purdue University
DOI
11:20
20m
Talk
Gradient: Gradual Compartmentalization via Object Capabilities Tracked in Types
OOPSLA 2024
Aleksander Boruch-Gruszecki Charles University, Adrien Ghosn Microsoft Research, Mathias Payer EPFL, Clément Pit-Claudel EPFL
DOI
11:40
20m
Talk
Automatically Reducing Privilege for Access Control Policies
OOPSLA 2024
Loris D'Antoni University of Wisconsin-Madison, Shuo Ding Georgia Institute of Technology, Amit Goel AWS, Mathangi Ramesh Amazon Web Services, Neha Rungta Amazon Web Services, Chungha Sung Amazon Web Services, USA
DOI
12:00
20m
Talk
Functional Ownership through Fractional Uniqueness
OOPSLA 2024
Danielle Marshall University of Glasgow; University of Kent, Dominic Orchard University of Kent; University of Cambridge
DOI