Collecting Cyclic Garbage across Foreign Function Interfaces: Who Takes the Last Piece of Cake?
A growing number of libraries written in managed languages,
such as Python and JavaScript, are bringing about new demand
for a foreign language interface (FFI) between two managed languages.
Such an FFI allows a host-language program to seamlessly call a library
function written in a foreign language and exchange objects.
It is often implemented by a user-level library
but such implementation cannot reclaim cyclic garbage,
or a group of objects with circular references, across the
language boundary.
This paper proposes \emph{Refgraph GC}, which enables FFI
implementation that can reclaim cyclic garbage.
Refgraph GC coordinates the garbage collectors of two languages
and it needs to modify the managed runtime of one language only.
It does not modify that of the other language.
This paper discusses the soundness and completeness of the proposed
algorithm and also shows the results of the experiments with our
implementation of FFI with Refgraph GC.
This FFI allows a Ruby program to access a JavaScript library.
Tue 20 JunDisplayed time zone: Eastern Time (US & Canada) change
13:40 - 15:40 | PLDI: Analysis & OptimizationsPLDI Research Papers at Cypress 2 Chair(s): Fredrik Kjolstad Stanford University | ||
13:40 20mTalk | Collecting Cyclic Garbage across Foreign Function Interfaces: Who Takes the Last Piece of Cake? PLDI Research Papers Tetsuro Yamazaki University of Tokyo, Tomoki Nakamaru University of Tokyo, Ryota Shioya University of Tokyo, Tomoharu Ugawa University of Tokyo, Shigeru Chiba The University of Tokyo DOI | ||
14:00 20mTalk | Modular Hardware Design with Timeline Types PLDI Research Papers Rachit Nigam Cornell University, Pedro Henrique Azevedo de Amorim Cornell University, Adrian Sampson Cornell University DOI Pre-print | ||
14:20 20mTalk | Efficient Parallel Functional Programming with Effects PLDI Research Papers Jatin Arora Carnegie Mellon University, Sam Westrick Carnegie Mellon University, Umut A. Acar Carnegie Mellon University DOI | ||
14:40 20mTalk | Better Defunctionalization through Lambda Set Specialization PLDI Research Papers William Brandon MIT CSAIL, Benjamin Driscoll Stanford University, Wilson Berkow UC Berkeley, Frank Dai UC Berkeley, Mae Milano University of California at Berkeley DOI | ||
15:00 20mTalk | Sound Dynamic Deadlock Prediction in Linear Time PLDI Research Papers Hünkar Can Tunç Aarhus University, Umang Mathur National University of Singapore, Andreas Pavlogiannis Aarhus University, Mahesh Viswanathan University of Illinois at Urbana-Champaign DOI Pre-print | ||
15:20 20mTalk | Context Sensitivity without Contexts: A Cut-Shortcut Approach to Fast and Precise Pointer Analysis PLDI Research Papers Wenjie Ma Nanjing University, Shengyuan Yang Nanjing University, Tian Tan Nanjing University, Xiaoxing Ma Nanjing University, Chang Xu Nanjing University, Yue Li Nanjing University DOI Pre-print |