Formal Semantics and Type System for Vega Data Transformations
This program is tentative and subject to change.
Vega is a popular declarative language for creating interactive data visualizations. It supports reactive data transformations using its streaming dataflow architecture. Despite its wide-spread adoption, the exact semantics of Vega is subtle and poorly documented. This leads to difficult to understand error messages and incorrect or confusing visualizations.
This paper makes two contributions. First, we present a type system for the core data transformation language of Vega, which can prevent a range of common errors. Second, we define a graph-based operational semantics, providing a precise model of the streaming dataflow architecture of Vega. We show that our type system is sound with respect to the semantics.
Our work results in a practical checker for Vega specifications, but it also relates the dataflow architecture of Vega to well-studied ideas, including functional reactive programming and adaptive functional programming. The novelty of our work lies in considering functional reactive programming in the context of data visualization language and identifying what can be statically analysed in such environment.
This program is tentative and subject to change.
Tue 30 JunDisplayed time zone: Brussels, Copenhagen, Madrid, Paris change
11:00 - 12:30 | |||
11:00 30mTalk | A monadic interpreter and type-and-effect checker FTfJP Stefano Raviola Universita' del Piemonte Orientale, Paola Giannini University of Eastern Piedmont, Francesco Dagnino University of Genoa | ||
11:30 30mTalk | A Typestate Approach to Purpose-aware Programming FTfJP Joan Montas University of Massachusetts, Lowell, Samuel Dodson University of Massachusetts, Lowell, Anitha Gollamudi University of Massachusetts Lowell, Matteo Cimini University of Massachusetts Lowell | ||
12:00 30mTalk | Formal Semantics and Type System for Vega Data Transformations FTfJP Pre-print | ||