TE
科技回声
首页24小时热榜最新最佳问答展示工作
GitHubTwitter
首页

科技回声

基于 Next.js 构建的科技新闻平台,提供全球科技新闻和讨论内容。

GitHubTwitter

首页

首页最新最佳问答展示工作

资源链接

HackerNews API原版 HackerNewsNext.js

© 2025 科技回声. 版权所有。

Ask HN: The SICP book readers?

3 点作者 jozi9超过 10 年前
Everyone is saying that it's one of the best books for CS, and you can learn a lot from it, but I feel they're just bluffing because no one explains WHAT they have learnt exactly.

4 条评论

deangiberson超过 10 年前
They can&#x27;t explain what they&#x27;ve learned, because SICP covers so much ground. The best way I can explain is by negative examples. SICP is not:<p>- A learn X in 7 days book<p>- A technique driven solution book (cookbook)<p>- A quick overview of the new hotness library&#x2F;language&#x2F;api&#x2F;framework<p>- A list of all the functions that you should know<p>- A reprinting of the half complete wiki documentation of a weekend github toy<p>- A one off read that you dump in the recycle bin<p>SICP gives grounding to some of the core problems in computer science. I&#x27;ve returned to it several times, and I always learn something from what I&#x27;ve missed before. Understanding how functions&#x2F;closures&#x2F;namespaces&#x2F;objects all interrelate, how to think in recursion, building higher order programs from pieces, it even covers simple examples of VMs. It&#x27;s a very strong entry text that has stood the test of time, and is still providing value. Few texts in comp-sci can say the same. SICP does a good job of connecting the theory of comp-sci with a real language without overwhelming the student with absurd language syntax problems.<p>When any one asks me to recommend a computer book I recommend SICP. Best of all no one has to take my word for it, the book is free. <a href="https://mitpress.mit.edu/sicp/" rel="nofollow">https:&#x2F;&#x2F;mitpress.mit.edu&#x2F;sicp&#x2F;</a> go read it and form an opinion.<p>Who is SICP not for? If you are at a high level with programming with multiple languages under your belt, most of this would seem like a refresher. If you really &quot;know&quot; VMs then this is going to very low level stuff. If you want a quick read to learn the syntax for scheme this is not the book for you.
am391超过 10 年前
I&#x27;m reading SICP at the moment and have to say it&#x27;s been a real eye opener.<p>I&#x27;m finding that seeing concepts I take for granted when I&#x27;m programming being built up from first principles changes the way I think about the languages I use.<p>I&#x27;m not sure it&#x27;s made me a better programmer, but it has given me a better understanding of why programming languages are the way they are.
评论 #8494952 未加载
jonjacky超过 10 年前
I recently looked at SICP again after first reading it many years ago. I had retained the overall impression that SICP demonstrates how to build many of the celebrated creations of computer science - interpreters, compilers, databases, logic programming systems, circuit simulators - using a very simple programming language with just a few constructs.<p>But I had forgotten many of the details. Here is just one: in 3.1.1, Local State Variables, SICP shows how to, in effect, define classes and create objects using only function definition with lambda and set! (that is, assignment) in the definition body. The function you define this way is a like a class, the functions it returns are like instances. So you can do all this without any specifically object-oriented language features. This occupies just a few pages near the beginning of a long book - the whole book is dense with worked-out ideas like this.
评论 #8500056 未加载
informatimago超过 10 年前
What SICP teaches is how to use various types of abstractions to build software.<p>(It is lacking syntactic abstraction, as provided by Common Lisp macros, but one can argue that metalinguistic abstraction, which is covered, supercedes syntactic abstraction).<p>Also, for normal programmer, it works (along with the videos) like a mind-openner: you won&#x27;t understand programming the same way after having studied it. It has a mind-freeing effect.