Pointlessness is better than listlessness

0Citations
Citations of this article
2Readers
Mendeley users who have this article in their library.
Get full text

Abstract

Extensible sparse functional arrays (ESFA) is a persistent data structure with an implementation that performs every operation in O(1) time and space. There is no requirement for single threading of arrays, and no performance penalty for sharing. The implementation is an example of hardware/software co-design and also of active data structures. This makes the work interdisciplinary, and it builds on many ideas from functional programming. These include the definition of new array operations, observations about mutability and purity, monads, program transformations to remove unnecessary data structures, equational reasoning, and fixing space leaks in the garbage collector. This paper summarises a recently published exposition of the system, focusing on drawing connections with some of these foundational ideas. It also presents some new results on a simulation of ESFA on a GPU. A surprising result is that although the simulation has high overheads and limited parallelism, it can outperform a state of the art red black tree implementation when there is a large amount of sharing between arrays.

Cite

CITATION STYLE

APA

O’Donnell, J. T., & Hall, C. V. (2016). Pointlessness is better than listlessness. In Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics) (Vol. 9600, pp. 234–248). Springer Verlag. https://doi.org/10.1007/978-3-319-30936-1_13

Register to see more suggestions

Mendeley helps you to discover research relevant for your work.

Already have an account?

Save time finding and organizing research with Mendeley

Sign up for free