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

Florian Biermann, Wensheng Dou, Peter Sestoft

Publikation: Konference artikel i Proceeding eller bog/rapport kapitelKonferencebidrag i proceedingsForskningpeer review

Abstract

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.
OriginalsprogEngelsk
TitelInternational Symposium on Practical Aspects of Declarative Languages : PADL 2018: Practical Aspects of Declarative Languages
Antal sider16
ForlagSpringer
Publikationsdato22 dec. 2017
Sider20-35
ISBN (Trykt)978-3-319-73304-3
ISBN (Elektronisk)978-3-319-73305-0
DOI
StatusUdgivet - 22 dec. 2017
BegivenhedInternational Symposium on Practical Aspects of Declarative Languages - Los Angeles, USA
Varighed: 8 jan. 20189 jan. 2018
Konferencens nummer: 20
https://popl18.sigplan.org/series/PADL

Konference

KonferenceInternational Symposium on Practical Aspects of Declarative Languages
Nummer20
Land/OmrådeUSA
ByLos Angeles
Periode08/01/201809/01/2018
Internetadresse
NavnLecture Notes in Computer Science
Vol/bind10702
ISSN0302-9743

Emneord

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

Fingeraftryk

Dyk ned i forskningsemnerne om 'Rewriting High-Level Spreadsheet Structures into Higher-Order Functional Programs'. Sammen danner de et unikt fingeraftryk.

Citationsformater