SICP is a multi-layered, intensely philosophical book and philosophical truths are not transmitted like pieces of eight but are made real through praxis.
Ask HN: SICP is often recommended as mind opener, what did you learn from it?
11–20 of 32 posts
Re: Ask HN: SICP is often recommended as mind opener, what did you learn from it?
#12It builds from first principles (among other things):
* (the core) the lisp metacircular evaluator
* computer algebra
* logic programming [1]
* a register machine
* a compiler targeting that register machine
(lazy evaluation, streams vs. lists, concurrency, and more)
I can't think of any other book in the undergraduate canon with that kind of breadth.
Personally I didn't really see any of this for the first time in SICP: I think I'd already had the whole "programs are data" epiphany from learning Haskell and reading PL-related papers before I read SICP. Still, it's really fun to see so much collected in one place.
(I think the fun part of learning new programming languages is the concepts they teach you. e.g. in my opinion there's another fun "reasoning is a syntactic operation" moment you get from learning a language like Coq.)
It's been a while since I looked at it but I remember enjoying "Concepts, Techinques, and Models of Computer Programming (van Roy and Haridi)" for reasons similar to why I liked SICP. (It's a little less broad, but has the same subject of ~"here are a bunch of different models of computing and how they are all related by the same fundamentals").
(Also, poke around http://lambda-the-ultimate.org/ and check out Guy Steele's Lambda the Ultimate papers if you haven't already.) https://dspace.mit.edu/bitstream/handle/1721.1/5790/AIM-353.... https://dspace.mit.edu/bitstream/handle/1721.1/6091/AIM-379....
[1] You know, like Prolog? - from that "AI will solve all problems" moment we had in the 80s.
Re: Ask HN: SICP is often recommended as mind opener, what did you learn from it?
#13I found I got more from it the second time I read it after I had some experience programming. The first time I had almost no experience and was caught up in everything it was trying to teach and missed a lot of things.
Re: Ask HN: SICP is often recommended as mind opener, what did you learn from it?
#14What I like about SICP is how it shows how several different moderately-advanced (for an undergraduate) programming concepts are all related by a basic model of computing that's defined in the book. It builds from first principles (among other things): * (the core) the lisp metacircular evaluator * computer algebra * logic programming [1] * a register machine * a compiler targeting that register machine (lazy evaluat…
Which leads to the funny footnote in section 4.1.1 when discussing implementing conditionals
6 [...] Contemplation of the meaning of true? here yields expansion of consciousness without the abuse of substance.
Re: Ask HN: SICP is often recommended as mind opener, what did you learn from it?
#15Perhaps I read it when I was too old, but I didn’t find it particularly insightful. Just a good beginner’s programming book…
Re: Ask HN: SICP is often recommended as mind opener, what did you learn from it?
#16SICP has an extremely short description of syntax at the start, and how it is parsed. The rest of the book is about the structure and interpretation of computer programs. You just build structure by building abstraction after abstraction using the same basic syntax for everything. You interpret by referring to the parsing order. The language fades into the background - at no point are you referring to your syntax cheatsheet, it is all the same.
Instead you think about how to reason. And how to transform that reasoning into structured programs.
Re: Ask HN: SICP is often recommended as mind opener, what did you learn from it?
#17It, and by extension Scheme, showed me the power of lambda calculus for the first time.
Couldn't really mention much else about that book today to be honest, though I am sure it exposed me to other ideas as well. Just can't remember.
Re: Ask HN: SICP is often recommended as mind opener, what did you learn from it?
#18Ask HN: Is SICP/HtDP still worth reading in 2023? Any alternatives? - https://news.ycombinator.com/item?id=36802579 - July 2023 (98 comments)
Re: Ask HN: SICP is often recommended as mind opener, what did you learn from it?
#19Re: Ask HN: SICP is often recommended as mind opener, what did you learn from it?
#20Besides exposing me to Lisp, SICP taught me how much joyful - not just fun - programming can be.
Why exactly did it make programming joyful?
Scheme is a beautiful language because there is almost nothing to it.