4 ms·
What I loved most about my class based on SICP was that I learned a whole new way to reason about code, and that came from using Scheme. They changed the intro
by jedberg 3y ago
What I loved most about my class based on SICP was that I learned a whole new way to reason about code, and that came from using Scheme. They changed the intro class at Berkeley to use Python a while back, when the folks who knew lisp/scheme retired, and I think it made the class much worse.
This is really the death knell of SICP isn't it?
- mathisfun123 3y agoYou know how people love to repeat that old saw about how computer science is no more about computers than astronomy is about telescopes (or whatever it is)? Well ironically (because it's the same exact people but this time on the other side of the misunderstanding) SICP is no more about scheme/lisp than computer science is about computers.
- jedberg 3y agoSICP is not about scheme or lisp, but its concepts are best understood in scheme in lisp. Just like the best way to understand what Saturn looks like is to look at it though a telescope. Sure you can use a spectrum scan or the output of a radio telescope, but it's really not the same as looking at in a telescope. Same thing here -- SICP just isn't the same if it's not in scheme or lisp.
- mathisfun123 3y ago> Just like the best way to understand what Saturn looks like is to look at it though a telescope. So then astronomy is about telescopes...? I'm happy to accept SICP is intimately related to lisp (which means it is less general than people claim) but just as long as we're consistent.
- deleted 3y ago[deleted]
- jedberg 3y ago> So then astronomy is about telescopes...? No? I never said that. SICP teaches concepts, those concepts are better understood with lisp. Astronomy teaches concepts, those concepts are better understood with telescopes. In neither case is the subject about the tool, it's just better understood with the tool.
- mathisfun123 3y agoI just really think you should be ready to accept the full force of your words: >Same thing here -- SICP just isn't the same if it's not in scheme or lisp. That straight up reads like SICP and lisp are inseparable and that exactly means that SICP is not as general as people claim. What we have here is unstoppable force meets immovable object (otherwise known as a contradiction). The resolution is simple: either SICP is valuable for the ideas, in which case renderings in js or python are fine, or SICP's value is diminished without lisp, in which case it's not actually about ideas but about the language of choice. Can't have it both ways.
- jedberg 3y agoYou have your causation backwards. SICP has valuable ideas in it. But those ideas are best understood using a particular tool. You can use other tools to understand it, but it will be more work and you won't understand it as well. Just like you could use a screwdriver to drive a nail into a board. But it will be easier and better understood if you use a hammer. The nail provides the same value either way.
- ryanklee 3y agoOh come on, would you reckon that SICP would be just as good in Assembly? Just because computation is substrate independent doesn't mean our brains don't care about the form computational concepts are expressed in.
- mathisfun123 3y agoi have a pretty simple perspective on SICP and lisp: neither are that amazing and both are idiosyncratic examples of a very generic thing (ds&a book and programming language, respectively) and also both attract a cargo cult following.
- lolinder 3y agoI've tried to go through the JS version, and I have to disagree. I know enough Scheme to see why the book is structured the way it is, but it doesn't work well in JS. The patterns that seem so natural in Scheme are contrived to the point of being distracting in JavaScript.
- deleted 3y ago[deleted]
- horeszko 3y agoI think the Scheme version of SICP will live on outside of academia and CS undergrad studies. I'm using SICP for self-learning and I had the choice of Scheme, JS, or Python. I still chose Scheme. This is because I figured Scheme would offer something those other languages didn't since Scheme is the original language of the book and Scheme is just "different" than other languages. It forces you to think differently about programming. I'm glad I chose Scheme. SICP with Scheme is the best choice imo since Scheme most clearly illustrates the lessons of the book.
- Lyngbakr 3y agoWhat's deterring me from pulling the trigger on the Scheme version is the price. CAD$87 seems a bit steep for a paperback edition that's almost 30 years old. The JavaScript version is CAD$20 cheaper.
- bamfly 3y agoSeeing a lot of $25-45 (USD) used price. Used books are awesome. I have north of 500 books and I doubt more than 50 were purchased new. Only that many because some of my relatives want Christmas and birthday wishlists every year, but won't shop anywhere but Amazon and think it's weird to buy someone a used book as a gift (I'd rather have 2-3x as many books for the same money, but hey, I'm not the one paying, so whatever, I guess).
- Lyngbakr 3y agoI ended up at Alibris. CAD$45 + CAD$15 shipping for 'very good' condition.
- whartung 3y agoSICP, as a book, is very nice. It's a great size, not too big, light and nimble to carry around. Many books, notably text books, are pretty big and ungainly. But SICP is just a really nice package. (Mind, I have not seen the paperback, I have a hardback from mutter mumble years ago.)
- 3y ago