Rewriting High-Level Spreadsheet Structures into Higher-Order Functional Programs

Research output: Conference Article in Proceeding or Book/Report chapterArticle in proceedingsResearchpeer-review

View graph of relations

Spreadsheets are used heavily in industry and academia. Often, spreadsheet models are developed for years and their complexity grows vastly beyond what the paradigm was originally conceived for. Such complexity often comes at the cost of recalculation performance. However, spreadsheet models usually have some high-level structure that can be used to improve performance by performing independent computation in parallel. In this paper, we devise rules for rewriting high-level spreadsheet structure in the form of so-called cell arrays into higher-order functional programs that can be easily parallelized on multicore processors. We implement our rule set for the experimental Funcalc spreadsheet engine which already implements parallelizable higher-order array functions as well as user-defined higher-order functions. Benchmarks show that our rewriting approach improves recalculation performance for spreadsheets that are dominated by cell arrays.
Original languageEnglish
Title of host publicationInternational Symposium on Practical Aspects of Declarative Languages : PADL 2018: Practical Aspects of Declarative Languages
Number of pages16
Publication date22 Dec 2017
ISBN (Print)978-3-319-73304-3
ISBN (Electronic)978-3-319-73305-0
Publication statusPublished - 22 Dec 2017
EventInternational Symposium on Practical Aspects of Declarative Languages - Los Angeles, United States
Duration: 8 Jan 20189 Jan 2018
Conference number: 20


ConferenceInternational Symposium on Practical Aspects of Declarative Languages
LandUnited States
ByLos Angeles
SeriesLecture Notes in Computer Science

    Research areas

  • arrays, expression rewriting, functional programming, parallelism, performance, spreadsheets


No data available

ID: 82454105