How to Design Programs, Second EditionMatthias Felleisen, Robert Bruce Findler, Matthew Flatt, Shriram Krishnamurthi · First published 2018Open the Tome