5 ms·
It seems to me that this version has much less to offer than the original. After reading only the table of contents and the first chapter, I feel as though it
by groovy2shoes 15y ago
It seems to me that this version has much less to offer than the original. After reading only the table of contents and the first chapter, I feel as though it lacks many of the qualities that make the original such a classic in my mind.
Most of these qualities have nothing to do with Lisp. SICP had a tendency to take things slow. The presentation of the material reflected how programs are actually structured -- the text incrementally built on itself much in the same way that abstractions are built on other abstractions.
While reading through the first chapter of the Python version, I felt as though I was being bombarded with tidbit after tidbit without the richness of explanation featured in the original.
One thing that's missing is metalinguistic abstraction. This is something that's comparatively easy to do in Lisp, so it's understandable that it's been left out of the Python version. Unfortunately, that chapter of SICP is often an eye-opener for even experienced programmers.
Parallel and distributed processing are certainly welcome topics, and will probably become necessary (if they haven't already) as we continue moving into the Information Age.
Overall, however, I didn't get the feeling that this work keeps the same spirit as SICP. I think an almost one-to-one code translation of the first three chapters would have been better.
- baddox 15y agoI don't understand what justification there is for calling this "SICP for Python." I'm sure it's a fine Python textbook, but the table of contents bares little resemblance to SICP.
- groovy2shoes 15y agoNor does much of the content.