rmurray10 (5) [Avatar] Offline
It is just a nit, but I noticed an inconsistency in the diagram sequence of the abbreviating names example on page 13. In step 2 “Alonzo” and “Church” are labeled with names(0) and names(1). In step 4, “Church” is not labeled with names(1), ever though names(1) appears in the var definition on the left. The arrow from step 2 to step 4 makes it clear that this is the same “Church”, but I think the label should also be carried forward. I believe that in a diagram sequence, it is important to change only features that play a role in the explanation. The absence of names(1) in step 4 could raise the unnecessary question of why. I wonder how many will get the very good pun of using Alonzo Church as an example. I remember two things from an “Introduction to Mathematical Logic.” First, that some pages are more footnotes than text. The second is the hours spent fighting with the material. I think it was the hardest textbook I ever tried to read.

Speaking of puns, how about using some sort of pun on Grok? Maybe the introduction should state that one of the objectives of the book is make the reader feel that he/she is not a stranger in a strange land of functional programming.
aslam.khan (50) [Avatar] Offline
Re: A nit on page 13
Maybe it is not a nit. Consistency and self-explanatory diagrams are important.

Thanks for your feedback.

-- Aslam