Rusty Links in Local Chains

05/02/2022
by   James Noble, et al.
0

Rust successfully applies ownership types to control memory allocation. This restricts the programs' topologies to the point where doubly-linked lists cannot be programmed in Safe Rust. We sketch how more flexible "local" ownership could be added to Rust, permitting multiple mutable references to objects, provided each reference is bounded by the object's lifetime. To maintain thread-safety, locally owned objects must remain thread-local; to maintain memory safety, local objects can be deallocated when their owner's lifetime expires.

READ FULL TEXT

page 1

page 2

page 3

page 4

research
09/06/2023

Reference Capabilities for Flexible Memory Management: Extended Version

Verona is a concurrent object-oriented programming language that organis...
research
05/10/2022

The Move Borrow Checker

The Move language provides abstractions for programming with digital ass...
research
05/20/2017

The Meaning of Memory Safety

We propose a rigorous characterization of what it means for a programmin...
research
06/29/2019

Deciding Memory Safety for Forest Datastructures

Memory safety is the problem of determining if a heap manipulating progr...
research
02/28/2020

Behavioural Types for Memory and Method Safety in a Core Object-Oriented Language

We present a type-based analysis ensuring memory safety and object proto...
research
12/28/2022

Verification of C++ Programs with VeriFast

VeriFast is a prototype tool based on separation logic for modular verif...
research
03/21/2019

Local Interactions for Cohesive Flexible Swarms

Distributed gathering algorithms aim to achieve complete visibility grap...

Please sign up or login with your details

Forgot password? Click here to reset