Hacker News new | ask | show | jobs
by qpax 2246 days ago
"Processing Recursive Lists" is a good example of how Python is abused for all sorts of things.

If this is actually taught, I'm no longer surprised by the code that I encounter in the wild.

1 comments

I concur, this book is a terrible way to introduce anybody to Python.

I imagine they want to teach general programming skills, and hence want to give you a "way to think" that is low level enough to let you work with any language, using Python as a pseudo-code to demonstrate it.

This approach is doomed to fail.

It's much better to teach the language properly, then introduce other languages as a comparison point, if this is what you want.

I don't get the stellar reputation of this text, maybe it was great when it was written for Scheme, but as-is, I can't see most of my students even finding the motivation to reading it.

SICP shouldn't really be taught in any language other than Scheme, or a language designed specifically for teaching SICP.

It doesn't make sense otherwise.

To disagree with you, I took the Python version of UCB's CS61A and I learned quite a lot (especially coming from a non-programming background). Perhaps other forms of SICP are better, but CS61A was a really enjoyable course overall and was part of the reason I decided to switch majors to Computer Science.
It could probably work in an ML variant like SML.