I want to read Purely Functional Data Structures. I’ve easily found the thesis (which is freely available as a PDF), but see that there’s a book available also. So I’d like to know what the differences are, if any, between these two publications.
7
Here’s a blog post by the author, where he says
I thought that the basic organization of my dissertation was pretty solid, so mostly I was able to focus on adding and adjusting things to make it work better as a book. For example, I no longer had the constraint from my dissertation of having to focus on original work, so I was free to add data structures that had been developed by other people.
and
The main additions were expanded introductory material (such as my simplification of red-black trees, which was developed a few weeks after my thesis defense in a series of emails with Richard Bird), exercises, and an appendix including all the source code in Haskell (the main text used source code in Standard ML).
As an owner of the book (though I haven’t gotten through much of it) I can point out that it adds a rather large appendix with Haskell translations of his ML code.
Aside from that, it looks like he’s essentially taken his thesis, reworked it and officially published it, much like you’d see out of a new edition of any programming reference out there. You can probably get a lot out of the thesis for free, but there will be some fixes, rewordings and extra references available in the book.