47 books
—
32 voters

Goodreads helps you keep track of books you want to read.

Start by marking “Purely Functional Data Structures” as Want to Read:

# Purely Functional Data Structures

by

Most books on data structures assume an imperative language such as C or C++. However, data structures for these languages do not always translate well to functional languages such as Standard ML, Haskell, or Scheme. This book describes data structures from the point of view of functional languages, with examples, and presents design techniques that allow programmers to de
...more

## Get A Copy

Paperback, 232 pages

Published
June 13th 1999
by Cambridge University Press
(first published September 1996)

## Friend Reviews

To see what your friends thought of this book,
please sign up.

## Reader Q&A

To ask other readers questions about
Purely Functional Data Structures,
please sign up.

Recent Questions

## Community Reviews

Showing 1-30

Start your review of Purely Functional Data Structures

The choice of language for this book -- Standard ML -- is in line with the above: Standard ML is used in research but not as much in the industry as other languages like Haskell, Erlang, Clojure, Scala. How many people are you reaching with this choice? True, there is Haskell source code at the end of the book, and sure I can think ...more

Oct 23, 2007
Eric
added it

Phew, one of those books that you really get only as much as you put into.

Worth it, but prepare to work :-)

(I'm afraid i was far lazier than I should have been)

Worth it, but prepare to work :-)

(I'm afraid i was far lazier than I should have been)

Which is really why I think it was worth the effort to untangle this mess: even if you only get the gist of some of the topics covered in this book, they're ...more

First, the book does not read exactly like a novel. It is dense and technical and tackles difficult question. Hopefully the chapters are self contained and one can worked them separately. Every chap ...more

There are no discussion topics on this book yet.
Be the first to start one »

## Goodreads is hiring!

## News & Interviews

As dedicated readers already know, some of the best and most innovative stories on the shelves come from the constantly evolving realm of young ...

31 likes · 11 comments

No trivia or quizzes yet. Add some now »

“A distinctive property of functional data structures is that they are always persistent—updating a functional data structure does not destroy the existing version, but rather creates a new version that coexists with the old one. Persistence is achieved by copying the affected nodes of a data structure and making all changes in the copy rather than in the original.”
—
1 likes

“The notion of amortization arises from the following observation. Given a sequence of operations, we may wish to know the running time of the entire sequence, but not care about the running time of any individual operation. For instance, given a sequence of n operations, we may wish to bound the total running time of the sequence by O(n) without insisting that every individual operation run in O(1) time. We might be satisfied if a few operations run in O(log n) or even O(n) time, provided the total cost of the sequence is only O(n). This freedom opens up a wide design space of possible solutions, and often yields new solutions that are simpler and faster than worst-case solutions with equivalent bounds.”
—
1 likes

More quotes…