Skip to content
master
Go to file
Code

Latest commit

 

Git stats

Files

Permalink
Failed to load latest commit information.
Type
Name
Latest commit message
Commit time
05
 
 
06
 
 
07
 
 
08
 
 
09
 
 
10
 
 
12
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

README.md

SICP

SICP,一本讲解编程真谛的经典教材。之前上大学期间,陆陆续续看了2遍这本书,无奈都没坚持到底。第一次只看完第一章,第二次只看完前三章。很多习题也没做。

这,是第三次进攻。这个 repo 会记录我在看 SICP 时的习题代码与一些自己的笔记与想法,这么做一方面是给自己查漏补缺,另一方面也为希望对今后阅读 SICP 的人有些许帮助。

为了方便检索,我使用 gitbook 制作了《SICP 读书笔记》电子书,供大家参考。

Why SICP

目标

2016年1月1号之前啃完所有章节与习题!! 失败告终。只完成前三章。

新的一年继续读书计划2016年6月30号前,完成剩下的第四章、第五章。 完成

建议

完完整整看完一本书是一件困难的事,本书更是如此。

这本书的很多内容、习题需要仔细揣摩才能领略其精髓,所以看这本书一定不要心急。 其次,在阅读时,请务必关闭手机上一些社交工具,并预留出至少 1 个小时的完整时间来看,否则我不认为你真的能有所收获。

学习是件很苦的事,大多数人都是三分钟热度,所以如果你觉得看这本书让你很烦躁,不妨出去运动一下,或听一会音乐🎵,第二天接着来。坚持下来,不要放弃,更不要失去对探索编程真谛的好奇心。

以上与所有 SICPer 共勉。

环境准备

工欲善其事必先利其器。下面说下我Mac上的scheme环境:

  • Mac 环境
  • mit-scheme 9.2,我的Mac版本是10.10.2,按照上这个官方scheme后点击图标,闪退,不清楚为什么,我这里直接把MIT:GNU Scheme.app/Contents下的Resources文件夹拷贝出来,并把它加入的PATH中,这样就能够运行了。 mit-scheme screencast
  • 这里安装好的scheme在交互式环境下无法使用方向键,可以通过安装rlwrap解决(brew install rlwrap)之后,用rlwrap mit-scheme启动就可以了。
  • 英文版epub+中文版实体书,计算机的书最好还是看英文原版,我这里买了中文版的实体书,英文版的好贵!不过多看对epub格式支持很好,放手机上看很方便,而且多看支持划词翻译,写笔记,笔记同步Evernote等等,真是太方便了,推荐大家使用。手机屏幕还是太小了,而且很容易分心,Kindle Paperwhite才是真爱,值得拥有💖
  • mit-scheme直接从文件中读取代码并执行,例如有个文件名为fib.scm的文件,在scheme交互式环境下通过(load "fib.scm")命令就能够执行fib.scm中的代码了。
  • 2.2.4小节用到的图形语言采用Racket实现,这是它的文档
  • 2.4.3小节putget的实现,参考/exercises/02/lib/hash_table.scm

我的初始化环境就是这样了,后面如果有改变我会修改这里的说明。

辅助资料

QQ 群

欢迎在读或打算读 SICP 的朋友加入 SICP 读书 QQ 群:119845407,让我们一起探索编程的奥妙。

sicp_qq

手机 QQ 可直接扫码加入。

Timeline

  • 2015-5-17 第三次开启SICP之旅
  • 2015-7-12 结束第一章,构造过程抽象。我的总结
  • 2015-9-20 结束第二章,构造数据抽象。我的总结
  • 2015-12-26 结束第三章,模块化、对象和状态。我的总结
  • 2016-04-23 结束第四章,元语言抽象。我的总结
  • 2016-05-21 结束第五章,寄存器机器里的计算。我的总结

License

You can’t perform that action at this time.