The Fun of Programming – Gibbons, de Moer and Bird (2003)
cs.ox.ac.uk
cs.ox.ac.uk
Preface http://www.cs.ox.ac.uk/jeremy.gibbons/publications/fop-prefa...
Chapter 3, Origami programming, Jeremy Gibbons https://www.staff.science.uu.nl/~3860418/msc/11_infomtpt/pap...
Chapter 4, Describing and interpreting music in Haskell, Paul Hudak http://cs.yale.edu/c2/images/uploads/HaskoreFUN.pdf
Chapter 6, How to write a financial contract, Simon Peyton Jones and Jean-Marc Eber http://research.microsoft.com/en-us/um/people/simonpj/Papers...
Chapter 7, Functional images, Conal Elliott http://conal.net/papers/functional-images/fop-conal.pdf
Chapter 10, Arrows and computation, Ross Paterson http://www.staff.city.ac.uk/~ross/papers/fop.ps.gz
Chapter 11, A prettier printer, Philip Wadler http://homepages.inf.ed.ac.uk/wadler/papers/prettier/prettie...
Chapter 12, Fun with phantom types, Ralf Hinze http://www.cs.ox.ac.uk/ralf.hinze/publications/With.pdf
Missing Chapters:
Chapter 1, Fun with binary heap trees, Chris Okasaki (Perhaps bsznjyewgd would like to share his copy?)
Chapter 2, Specification-based testing with QuickCheck, Koen Claessen and John Hughes
Chapter 5, Mechanising fusion, Ganesh Sittampalam and Oege de Moor
Chapter 8, Functional hardware description in Lava, Koen Claessen, Mary Sheeran and Satnam Singh
Chapter 9, Combinators for logic programming, Mike Spivey and Silvija Seres
It's the sample chapter from the product page on Springer: http://www.springer.com/us/book/9781403907721
Maxiphobic heaps are probably the most intuitive implementation of the priority queue data structure, and they're meldable to boot. I only wish weight-balanced trees are as simple (to prove the invariant) as the height-balanced AVL trees.
http://www.amazon.de/Fun-Programming-Cornerstones-Computing/...