
The notion that "thinking about computing is one of the most exciting things the human mind can do" sets both The Little Schemer (formerly known as The Little LISPer) and its new companion volume, The Seasoned Schemer, apart from other books on LISP. The authors' enthusiasm for their subject is compelling as they present abstract concepts in a humorous and easy-to-grasp fashion. Together, these books will open new doors of thought to anyone who wants to find out what computing is really about. The Little Schemer introduces computing as an extension of arithmetic and algebra; things that everyone studies in grade school and high school. It introduces programs as recursive functions and briefly discusses the limits of what computers can do. The authors use the programming language Scheme, and interesting foods to illustrate these abstract ideas. The Seasoned Schemer informs the reader about additional dimensions of computing: functions as values, change of state, and exceptional cases. The Little LISPer has been a popular introduction to LISP for many years. It had appeared in French and Japanese. The Little Schemer and The Seasoned Schemer are worthy successors and will prove equally popular as textbooks for Scheme courses as well as companion texts for any complete introductory course in Computer Science.
That the "enlightenment" of Lisp is that you can use functions everywhere. Write macros that look like functions and modify behavior, and build your code as a language.
Things like monads are more on the evolution of functional languages, and I also fall off the bike. It's as difficult as you want it to be, and I find scheme and lisp to be easier high level languages than javascript or python and makes more sense.
The forward and preface to SICP is good reading.
https://mitp-content-server.mit.edu/books/content/sectbyfn/b...
The Dan Friedman books are pretty good in general: "The Little Schemer," and the sequel "The Seasoned Schemer" which are both more "recursion" books. He also has another book "Scheme and the Art of Programming." Which I think is a great comp sci book that's not too difficult and doesn't seem too well known.
How to Design Programs is supposed to be a pretty good comp sci intro:
- From Mathematics to Generic Programming by Stepanov & Rose
- Gödel, Escher, Bach: an Eternal Golden Braid by Hofstadter
- The Little Schemer / The Seasoned Schemer
The Divine Comedy by Dante - It is hard to underestimate how much it has influenced our culture.
A Distant Mirror - The history of the 14th century, but engaging like a novel.
Name of the Rose - Mystery novel set in Medieval times.
On Lisp by Paul Graham - http://www.paulgraham.com/onlisp.html
Seasoned Schemer - Kind of an interactive book that teaches computer science concepts in an interactive paper based way. Probably best to start with the Little Schemer first.
I'll throw out a recommendation for The Little series of books (e.g., The Little Schemer, The Seasoned Schemer, The Reasoned Schemer, The Little Typer, etc.)
The first book is all you need to grok recursion. You can just toss a copy at any student who struggles with it.
The second book ends with some really non-trivial CS stuff.
They're fantastic examples of the power of good pedagogy to explain interesting and difficult concepts normally relegated to drier texts.