Skip to main content
Kent Academic Repository

Just-in-Time Data Structures

De Wael, Mattias and Marr, Stefan and De Koster, Joeri and Sartor, Jennifer B. and De Meuter, Wolfgang (2015) Just-in-Time Data Structures. In: Onward! 2015 2015 ACM International Symposium on New Ideas, New Paradigms, and Reflections on Programming and Software. SPLASH Systems, Programming, and Applications . ACM, New York, USA, pp. 61-75. ISBN 978-1-4503-3688-8. (doi:10.1145/2814228.2814231) (KAR id:63822)

Abstract

Today, software engineering practices focus on finding the single "right" data representation (i.e., data structure) for a program. The right data representation, however, might not exist: relying on a single representation of the data for the lifetime of the program can be suboptimal in terms of performance. We explore the idea of developing data structures for which changing the data representation is an intrinsic property. To this end we introduce Just-in-Time Data Structures, which enable representation changes at runtime, based on declarative input from a performance expert programmer. Just-in-Time Data Structures are an attempt to shift the focus from finding the "right" data structure to finding the right sequence of data representations. We present JitDS-Java, an extension to the Java language, to develop Just-in-Time Data Structures. Further, we show two example programs that benefit from changing the representation at runtime.

Item Type: Book section
DOI/Identification number: 10.1145/2814228.2814231
Subjects: Q Science > QA Mathematics (inc Computing science)
Divisions: Divisions > Division of Computing, Engineering and Mathematical Sciences > School of Computing
Depositing User: Stefan Marr
Date Deposited: 26 Dec 2017 17:44 UTC
Last Modified: 09 Dec 2022 05:17 UTC
Resource URI: https://kar.kent.ac.uk/id/eprint/63822 (The current URI for this page, for reference purposes)

University of Kent Author Information

  • Depositors only (login required):

Total unique views for this document in KAR since July 2020. For more details click on the image.