Review: Recursion via Pascal

I did not ex­pect to en­joy Recursion via Pascal by J.S. Rohl this much. The text is con­cise and the code im­ple­men­ta­tions are suc­cinct (I’m look­ing at you, Introduction to Recursive Programming). The con­tent strikes a fine bal­ance be­tween the­ory, analy­sis, and im­ple­men­ta­tion.

Reading this book made me fall in love with Pascal again. I see now how Pascal in­flu­enced Go. The way code is writ­ten is beau­ti­ful and el­e­gant. Fif­teen years ago, I did not ap­pre­ci­ate such beauty. But af­ter a decade work­ing with other lan­guages, I am fond of it again. In fact, this book makes me want to give Nim an­other try. I see Nim as a lovely child of Python and Pascal.

One as­pect I par­tic­u­larly en­joyed: the clas­sic method of an­a­lyz­ing com­plex­ity by count­ing each in­struc­tion’s cost. This ap­proach re­veals per­for­mance sub­tleties that as­ymp­totic analy­sis glosses over.

The last chap­ter on elim­i­nat­ing re­cur­sion is a treat. Not many text­books, as far as I have read, touch the sub­ject this deeply.

Verdict: Highly rec­om­mended. 4.5/5. It is clas­sic, it is fun, and it will im­prove your prob­lem-solv­ing skills.