ECOOP 2020
Sun 15 - Tue 17 November 2020 Online Conference
co-located with SPLASH 2020
Mon 16 Nov 2020 07:00 - 07:20 at SPLASH-I - M-1 Chair(s): Peter Thiemann, John Boyland
Mon 16 Nov 2020 19:00 - 19:20 at SPLASH-I - M-1 Chair(s): Yu David Liu, Hidehiko Masuhara

Traditionally, web applications have been written as HTML pages with embedded JavaScript code that implements dynamic and interactive features by manipulating the Document Object Model (DOM) through a low-level browser API. However, this unprincipled approach leads to code that is brittle, difficult to understand, non-modular, and does not facilitate incremental update of user-interfaces in response to state changes.

React is a popular framework for constructing web applications that aims to overcome these problems. React applications are written in a declarative and object-oriented style, and consist of components that are organized in a tree structure. Each component has a set of properties representing input parameters, a state consisting of values that may vary over time, and a render method that declaratively specifies the subcomponents of the component. React’s concept of reconciliation determines the impact of state changes and updates the user-interface incrementally by selective mounting and unmounting of subcomponents. At designated points, the React framework invokes lifecycle hooks that enable programmers to perform actions outside the framework such as acquiring and releasing resources needed by a component.

These mechanisms exhibit considerable complexity, but, to our knowledge, no formal specification of React’s semantics exists. This paper presents a small-step operational semantics that captures the essence of React, as a first step towards a long-term goal of developing automatic tools for program understanding, automatic testing, and bug finding for React web applications. To demonstrate that key operations such as mounting, unmounting, and reconciliation terminate, we define the notion of a well-behaved component and prove that well-behavedness is preserved by these operations.

Conference Day
Mon 16 Nov

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

07:00 - 08:20
M-1Research Papers at SPLASH-I +12h
Chair(s): Peter ThiemannUniversity of Freiburg, Germany, John BoylandUniveristy of Wisconsin, Milwaukee
07:00
20m
Talk
A Semantics for the Essence of React
Research Papers
Magnus MadsenAarhus University, Ondřej LhotákUniversity of Waterloo, Frank TipNortheastern University
Link to publication DOI Media Attached
07:20
20m
Talk
Reconciling Event Structures with Modern Multiprocessors
Research Papers
Evgenii MoiseenkoSt. Petersburg University / JetBrains Research, Anton PodkopaevNRU HSE, JetBrains Research, Ori LahavTel Aviv University, Orestis MelkonianUtrecht University, Viktor VafeiadisMPI-SWS
Link to publication DOI Media Attached
07:40
20m
Talk
A Framework for Resource Dependent EDSLs in a Dependently Typed Language
Research Papers
Jan de Muijnck-HughesUniversity of Glasgow, Wim VanderbauwhedeUniversity of Glasgow, Edwin BradyUniversity of St. Andrews
Link to publication DOI Media Attached
08:00
20m
Talk
Reshape your layouts, not your programs: A safe language extension for better cache localitySCICO Journal-First
Research Papers
Alexandros TasosImperial College London, Juliana Franco, Sophia DrossopoulouImperial College London, Tobias WrigstadUppsala University, Sweden, Susan EisenbachImperial College London
Link to publication DOI Media Attached
19:00 - 20:20
M-1Research Papers at SPLASH-I
Chair(s): Yu David LiuState University of New York (SUNY) Binghamton, Hidehiko MasuharaTokyo Institute of Technology
19:00
20m
Talk
A Semantics for the Essence of React
Research Papers
Magnus MadsenAarhus University, Ondřej LhotákUniversity of Waterloo, Frank TipNortheastern University
Link to publication DOI Media Attached
19:20
20m
Talk
Reconciling Event Structures with Modern Multiprocessors
Research Papers
Evgenii MoiseenkoSt. Petersburg University / JetBrains Research, Anton PodkopaevNRU HSE, JetBrains Research, Ori LahavTel Aviv University, Orestis MelkonianUtrecht University, Viktor VafeiadisMPI-SWS
Link to publication DOI Media Attached
19:40
20m
Talk
A Framework for Resource Dependent EDSLs in a Dependently Typed Language
Research Papers
Jan de Muijnck-HughesUniversity of Glasgow, Wim VanderbauwhedeUniversity of Glasgow, Edwin BradyUniversity of St. Andrews
Link to publication DOI Media Attached
20:00
20m
Talk
Reshape your layouts, not your programs: A safe language extension for better cache localitySCICO Journal-First
Research Papers
Alexandros TasosImperial College London, Juliana Franco, Sophia DrossopoulouImperial College London, Tobias WrigstadUppsala University, Sweden, Susan EisenbachImperial College London
Link to publication DOI Media Attached