Josephine: Using JavaScript to safely manage the lifetimes of Rust data

06/29/2018
by   Alan Jeffrey, et al.
0

This paper is about the interface between languages which use a garbage collector and those which use fancy types for safe manual memory management. Garbage collection is the traditional memory management scheme for functional languages, whereas type systems are now used for memory safety in imperative languages. We use existing techniques for linear capabilities to provide safe access to copyable references, but the application to languages with a tracing garbage collector, and to data with explicit lifetimes is new. This work is related to mixed linear/non-linear programming, but the languages being mixed are Rust and JavaScript.

READ FULL TEXT

page 1

page 2

page 3

page 4

research
06/23/2021

Fuel: A Compiler Framework for Safe Memory Management

Flow-sensitive type systems offer an elegant way to ensure memory-safety...
research
09/11/2019

Floorplan: Spatial Layout in Memory Management Systems

In modern runtime systems, memory layout calculations are hand-coded in ...
research
03/07/2018

Resource Polymorphism

We present a resource-management model for ML-style programming language...
research
05/05/2023

Descend: A Safe GPU Systems Programming Language

Graphics Processing Units (GPU) offer tremendous computational power by ...
research
01/14/2018

Hierarchical Memory Management for Mutable State

It is well known that modern functional programming languages are natura...
research
04/28/2020

Learned Garbage Collection

Several programming languages use garbage collectors (GCs) to automatica...
research
04/27/2023

Traced Types for Safe Strategic Rewriting

Strategy languages enable programmers to compose rewrite rules into stra...

Please sign up or login with your details

Forgot password? Click here to reset