Write a Blog >>
PLDI 2021
Sun 20 - Sat 26 June 2021 PLDI
Fri 25 Jun 2021 14:00 - 14:05 at PLDI-A - Talks 6A: Language Implementation
Sat 26 Jun 2021 02:00 - 02:05 at PLDI-A - Talks 6A: Language Implementation

A structural diffing algorithm compares two pieces of tree-shaped data and computes their difference. Existing structural diffing algorithms either produce concise patches or ensure type safety, but never both. We present a new structural diffing algorithm called truediff that achieves both properties by treating subtrees as mutable, yet linearly typed resources. Mutation is required to derive concise patches that only mention changed nodes, but, in contrast to prior work, truediff guarantees all intermediate trees are well-typed. We formalize type safety, prove truediff has linear run time, and evaluate its performance and the conciseness of the derived patches empirically for real-world Python documents. While truediff ensures type safety, the size of its patches is on par with Gumtree, a popular untyped diffing implementation. Regardless, truediff outperforms Gumtree and a typed diffing implementation by an order of magnitude.

Fri 25 Jun

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

13:30 - 14:05
Talks 6A: Language ImplementationPLDI at PLDI-A +12h
13:30
5m
Talk
Hashing Modulo Alpha-Equivalence
PLDI
Krzysztof Maziarz Microsoft, Tom Ellis Microsoft, Alan Lawrence Microsoft, Andrew Fitzgibbon Microsoft, Simon Peyton Jones Microsoft
DOI
13:35
5m
Talk
An Efficient Interpreter for Datalog by De-specializing Relations
PLDI
Xiaowen Hu University of Sydney, David Zhao University of Sydney, Herbert Jordan Innsbruck University, Bernhard Scholz University of Sydney
DOI
13:40
5m
Talk
Distance-in-Time versus Distance-in-Space
PLDI
Mahmut Taylan Kandemir Pennsylvania State University, Xulong Tang University of Pittsburgh, Hui Zhao University of North Texas, Jihyun Ryoo Pennsylvania State University, Mustafa Karakoy TUBITAK-BILGEM
DOI
13:45
5m
Talk
High Performance Correctly Rounded Math Libraries for 32-bit Floating Point Representations
PLDI
Jay P. Lim Rutgers University, Santosh Nagarakatte Rutgers University
DOI Pre-print
13:50
5m
Talk
Retrofitting Effect Handlers onto OCaml
PLDI
KC Sivaramakrishnan IIT Madras, Stephen Dolan OCaml Labs, Leo White Jane Street, Tom Kelly OCaml Labs, Sadiq Jaffer Opsian and OCaml Labs, Anil Madhavapeddy University of Cambridge
Link to publication DOI Media Attached
13:55
5m
Talk
Compiler-Assisted Object Inlining with Value Fields
PLDI
Rodrigo Bruno INESC-ID / IST, ULisboa, Vojin Jovanovic Oracle Labs, Christian Wimmer Oracle Labs, Gustavo Alonso ETH Zurich
DOI
14:00
5m
Talk
Concise, Type-Safe, and Efficient Structural Diffing
PLDI
Sebastian Erdweg JGU Mainz, Tamás Szabó JGU Mainz; Workday, André Pacak JGU Mainz
DOI

Sat 26 Jun

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

01:30 - 02:05
Talks 6A: Language ImplementationPLDI at PLDI-A
01:30
5m
Talk
Hashing Modulo Alpha-Equivalence
PLDI
Krzysztof Maziarz Microsoft, Tom Ellis Microsoft, Alan Lawrence Microsoft, Andrew Fitzgibbon Microsoft, Simon Peyton Jones Microsoft
DOI
01:35
5m
Talk
An Efficient Interpreter for Datalog by De-specializing Relations
PLDI
Xiaowen Hu University of Sydney, David Zhao University of Sydney, Herbert Jordan Innsbruck University, Bernhard Scholz University of Sydney
DOI
01:40
5m
Talk
Distance-in-Time versus Distance-in-Space
PLDI
Mahmut Taylan Kandemir Pennsylvania State University, Xulong Tang University of Pittsburgh, Hui Zhao University of North Texas, Jihyun Ryoo Pennsylvania State University, Mustafa Karakoy TUBITAK-BILGEM
DOI
01:45
5m
Talk
High Performance Correctly Rounded Math Libraries for 32-bit Floating Point Representations
PLDI
Jay P. Lim Rutgers University, Santosh Nagarakatte Rutgers University
DOI Pre-print
01:50
5m
Talk
Retrofitting Effect Handlers onto OCaml
PLDI
KC Sivaramakrishnan IIT Madras, Stephen Dolan OCaml Labs, Leo White Jane Street, Tom Kelly OCaml Labs, Sadiq Jaffer Opsian and OCaml Labs, Anil Madhavapeddy University of Cambridge
Link to publication DOI Media Attached
01:55
5m
Talk
Compiler-Assisted Object Inlining with Value Fields
PLDI
Rodrigo Bruno INESC-ID / IST, ULisboa, Vojin Jovanovic Oracle Labs, Christian Wimmer Oracle Labs, Gustavo Alonso ETH Zurich
DOI
02:00
5m
Talk
Concise, Type-Safe, and Efficient Structural Diffing
PLDI
Sebastian Erdweg JGU Mainz, Tamás Szabó JGU Mainz; Workday, André Pacak JGU Mainz
DOI