Projects per year
Abstract
While an integral part of all programming languages, the design
of collection libraries is rarely studied. This work briefly reviews
the collection libraries of 14 languages to identify possible design
dimensions. Some languages have surprisingly few but versatile
collections, while others have large libraries with many specialized
collections. Based on the identified design dimensions, we argue
that a small collection library with only a sequence, a map, and a
set type are a suitable choice to facilitate exploratory programming.
Such a design minimizes the number of decisions programmers
have to make when dealing with collections, and it improves dis-
coverability of collection operations. We further discuss techniques
that make their implementation practical from a performance per-
spective. Based on these arguments, we conclude that languages
which aim to support exploratory programming should strive for
small and versatile collection libraries
| Original language | English |
|---|---|
| Title of host publication | Proceeding Programming'18 Companion Conference Companion of the 2nd International Conference on Art, Science, and Engineering of Programming |
| Editors | Jennifer B. Sartor, Stefan Marr |
| Publisher | ACM New York, NY, USA |
| Pages | 135-143 |
| Number of pages | 9 |
| ISBN (Print) | 978-1-4503-5513-1 |
| DOIs | |
| Publication status | Published - Apr 2018 |
Fields of science
- 102 Computer Sciences
- 102009 Computer simulation
- 102011 Formal languages
- 102013 Human-computer interaction
- 102022 Software development
- 102024 Usability research
- 102029 Practical computer science
JKU Focus areas
- Computation in Informatics and Mathematics
- Engineering and Natural Sciences (in general)
Projects
- 1 Active
-
Java VM Compiler Performance (Oracle)
Mössenböck, H. (PI)
01.01.2001 → 31.05.2026
Project: Contract research › Industry project