Chapter 5. Collection types

It’s better to have 100 functions operate on one data structure than 10 functions on 10 data structures.

Alan Perlis[1]

1 “Epigrams on Programming,” ACM SIGPLAN 17, no. 9 (September 1982).

This chapter covers

  • Persistence, sequences, and complexity
  • Vectors: creating and using them in all their varieties
  • Lists: Clojure’s code form data structure
  • How to use persistent queues
  • Persistent sets
  • Thinking in maps
  • Finding the position of items in a sequence

Clojure provides a rich set of composite data types, or collection types, and we’ll cover them all: vectors, lists, queues, sets, and maps. In this chapter, we’ll dig into the strengths and weaknesses of each. We’ll spend more time on vectors and maps than ...

Get The Joy of Clojure, Second Edition now with O’Reilly online learning.

O’Reilly members experience live online training, plus books, videos, and digital content from 200+ publishers.