Scalable Spreadsheet-driven End-User Applications with Incremental Computation
Spreadsheets are a popular programming model among both novice and advanced users. It allows for quick development of computational tasks over the user’s data set. It has also been suggested as a model for lightweight, low-code development of small-scale personal and collaborative applications for managing data. A barrier is hit when trying to scale up these applications: as the volume of the data grows, performance of spreadsheet computations degrades noticeably, making their maintenance more difficult and frustrating. This paper explores one aspect in which spreadsheets can be boosted significantly — by making computations more incremental, such that small changes to the data would incur a respectively small cost of update. This is particularly interesting in the context of aggregate operations — applied to sets of data elements, producing a single value, such as their sum or average. We propose a compilation phase in which a compiler transforms a spreadsheet table into a program that accepts a stream of changes and produces a stream of updates. We show how to adapt classical results from finite differencing to this interesting modern scenario, and demonstrate that it yields asymptotic improvements to resource usage.
Wed 25 OctDisplayed time zone: Lisbon change
11:00 - 12:30
|Time-awareness in Object-exploration Tools: Toward In Situ Omniscient DebuggingRemote
Christoph Thiede Hasso Plattner Institute, University of Potsdam, Germany, Marcel Taeumel University of Potsdam; Hasso Plattner Institute, Robert Hirschfeld University of Potsdam; Hasso Plattner InstituteLink to publication DOI
|Code Merging Using Transformations and Member Identity
|Scalable Spreadsheet-driven End-User Applications with Incremental Computation