3 ms·
This comment reads like a very partisan, overstated puff piece in defence of the book. The Scheme aspect of SICP, and other decisions made by the authors, matt
by theoh 8y ago
This comment reads like a very partisan, overstated puff piece in defence of the book.
The Scheme aspect of SICP, and other decisions made by the authors, matter a lot because, contrary to what you seem to be claiming, there are many different approaches to and flavours of programming. There isn't a single core philosophy that, once imparted to students, "clues them in" to the essence of the cultures/styles/models deployed by Forth, Haskell, APL, Prologue, C etc.
- veddox 8y agoOf course these decisions matter, but not in the way you mean. The biggest hurdle to learning programming is not the syntax, not even when you're starting out with C++. It's learning to think like a programmer. One needs to learn how to take apart a problem and put it back together again in a way the computer understands - to get rid of all the ambiguities and phrase the solution in terms of conditionals and loops. When one starts to deal with bigger problems, one needs to learn the use of abstraction in order to deal with the added complexity. This is the skill that makes somebody a real programmer, and it stays pretty much the same across languages. The differences between OOP, FP and all the rest pale in comparison to that first great lesson that needs to be learnt. (Having started off with Java, learning Lisp was a huge step for me that I really struggled with at first. But it still wasn't anywhere near as difficult as learning programming for the very first time.) This is the skill that SICP tries to teach.