1
Rasphino 2021-02-02 20:18:36 +08:00
不懂就问,什么是 SCIP ?只听说过 SICP
|
2
dalibaxiaoliba 2021-02-02 20:19:14 +08:00
直接看就好了,还么看就有疑问么...
|
3
IsaacYoung 2021-02-02 20:21:49 +08:00
SICP
6.S081 CS143 |
4
misaka19000 2021-02-02 20:26:23 +08:00
干就完事儿了
|
5
asanelder OP @Rasphino #1 哈哈, 一直拼错
@dalibaxiaoliba #2 准备就着 mit 的视频看了 @IsaacYoung #3 看 http://groups.csail.mit.edu/mac/classes/6.001/abelson-sussman-lectures/ 没问题吧 @misaka19000 #4 奥力给! |
6
darksword21 2021-02-02 20:48:58 +08:00
顺势安利 emacs
|
7
Accessing 2021-02-02 20:57:46 +08:00 1
|
8
Accessing 2021-02-02 20:58:15 +08:00
|
9
catsoul 2021-02-02 20:59:41 +08:00 1
据扯,凌晨 1 点 45 分左右,在南墙根儿点一盏烛灯(没有烛灯可用煤油灯代替,电灯不行),人在对角线盘腿坐下,闭幕诵念 108 次“天灭 Vim,用 Emacs 包平安”后,以左手是指轻触舌尖后翻书,修炼方可获得最大功效(逃
|
10
imzhazha 2021-02-02 21:14:28 +08:00 via Android
我不是计算机专业的,当年接受了知乎上的建议,上手就是这本。有啥正确的打开姿势,看就完事了。
|
11
asanelder OP @Accessing #7
@Accessing #8 这个缩写应该是学计算机的都知道, 只是俺一直在拼错(逃~~~) @darksword21 #6 @catsoul #9 这个为啥能和 emacs 产生关系呢? 二位铁子? |
12
gricn 2021-02-02 21:21:27 +08:00
借着在这问一下,直接看书和配合 MIT or Stanford 的视频比,有哪些差别?
|
13
gricn 2021-02-02 21:22:11 +08:00
我的个人感受目前只有一个,push 自己的学习进度
|
14
KousukeSakurako 2021-02-02 21:23:15 +08:00 2
|
15
dc25b 2021-02-02 21:40:48 +08:00
我是有点懒。。把伯克利的 CS61a 做了一遍,所有 lab 加 project,算是浅尝辄止吧。
|
16
gowk 2021-02-02 21:56:19 +08:00
|
17
asanelder OP |
18
546L5LiK6ZOt 2021-02-02 22:41:45 +08:00
我就是题主说的消磨了兴趣的人,已经看到了第 4 章。
我觉得如果作为编程入门,SICP 是一本很好的书。我看的时候,一直在后悔入门学的还是谭浩强的 C 语言设计。 但是编程久了,SICP 里面讲的一些理念自然早已理解,我看的时候感觉有点无聊,最近刚打算放弃读下去。 |
19
oneforallsoft 2021-02-02 22:47:09 +08:00 via Android
像 mit 一样 所有该系本科生入学前都应该看完
|
20
zwpaper 2021-02-02 22:47:46 +08:00 via iPhone
emacs 是因为 lisp
|
21
levelworm 2021-02-03 01:12:05 +08:00 via Android
我觉得别纠结做完练习,练习里头有一些算法的东西,还有一些比如什么电子工程的玩意。我觉得可以找名校课程跟着他们的作业和实验就好了。
|
22
levelworm 2021-02-03 05:25:15 +08:00 via Android
话说大家有没有兴趣搞个 discord 一块看?最好是跟 CS61A 而不是看书,因为习题实在太多了。周末可以视频或者音频聚一次,大家总结一下经验和问题,平时就文字讨论,如何?
|
23
1490213 2021-02-03 07:32:50 +08:00 via Android
直接看就行了,能有啥问题?只是后面几章需要多花点时间琢磨一下而已。
|
24
xpresslink 2021-02-03 10:04:48 +08:00 1
楼主是要干以前 scheme 版还是现在的 python 版?
scheme 版, 百度 《计算机程序的构造和解释( SICP 中文第 2 版) https://download.csdn.net/download/a19980115/10289121 https://github.com/huyubing/books-pdf/find/master python 版 https://wizardforcel.gitbooks.io/sicp-py/content/ |
25
namelosw 2021-02-03 12:13:55 +08:00 7
除了第五章没看完其他都看得差不多了. 一些打开方式:
* 快速扫一遍, 确认真的想读. 很多人读过了大呼上当, 其实前半本书很多东西都跟日常工作对应. * 看完了就忘是最没意义的, 尝试避免这点, 不然还不如不看. * 从快到慢多看两遍效果比较好. 不然上来精读总也看不到后边, 前面其实都不重要. * 找个时间心气高的时候一口气看一两章, 然后接下来的几天里努力把第三章啃完 * 看二三章之后如果看不下去了, 可以回顾一下, 拿一些现代的工具比较一下, 思考一下优劣. 比如里面的 data directed 和 Java 的扩展机制比有什么优劣. 再比如第三章既介绍了 map 和 flatMap, 又介绍了 stream, 这两个能不能合并起来呢? 其实合并起来就是 Reactive extension. * 第三章的结束是一个重点: OO 和 FP 思想的区别. 可以找一下原教旨的 OO 语言比如 Smalltalk 玩一玩, 感受一下和 Java 有什么不一样的. 然后再找个现代函数式语言试试, 比如 Elixir(易)或者 Haskell(难). * 看完要做题, 但是卡住了直接跳到下一道, 基本上做上一半或者三分之一就代表你大概理解了, 赶紧趁热乎看后续章节, 别纠结. 某些题一看就很花时间就跳过, 或者上网看一下思路. * 第四章第五章基本就不是第一轮看的. 大部分人都会看两三章就放下了, 然后过几个月就全还回给书了. 所以二刷的时候可以快速温习一下前三章. * 第四章看完可以试一下 Prolog/Datalog, 比如 Datomic 数据库. * 四五章看到后面觉得不着地可以再去看 crafting interpreters 看, 前半本跟第四章对应, 后半本跟第五章的一部分对应. * 学不学 Emacs 都行, 不学 Emacs 就用 Racket, 里面有 SICP 的 language pack. 但是如果看不下去书的时候又没啥好做的可以折腾一下 Emacs, 然后折腾烦了再看书. 切忌把 Emacs 当前置条件, 同时学两个东西很容易互相卡住. --- 大概列一下提纲, 感兴趣的同学可以大概扫一眼是不是真的感兴趣: * 五章五个主题, 这五个主题描述的是和编程语言相关的主要话题, 一个编程语言的重点是它如何处理原语, 组合, 抽象. * SICP 的特点是扔掉现实世界, 在一个极小的 LISP 世界里从 0 开始构建所有关于计算机的基础知识. * 前两章讲介绍了 LISP 原语 /组合 /抽象, 第一章是函数抽象, 第二张是数据抽象(最终引向多态) * 前三章和规模化软件开发相关, 也就是日常我们说怎么写可维护可扩展的软件. 第三章说的是引入状态之后编程会变得复杂, 就有了函数式和面向对象两种互相矛盾的思想. 面向对象是把状态拆散, 函数式风格是不分状态而靠函数组合模块化(横切纵切), 他们各有合适的场景, 比如量子物理模拟用面向对象就没有意义, 书里的逻辑电路模拟用函数式风格就特别难写. * 第四章先讲了怎么用 LISP 实现 LISP 解释器, 这样对 LISP 的实现就有了一半的理解. 后面套用 LISP 解释器的套路, 可以把 LISP 改造成风格不同的 LISP, 也可以改造成其他语言, 可以解决风格迥然不同的实际问题(既然没有最好的语言, 只有最适合的语言, 那么最好的语言就是可以变成最适合语言的语言). * 第四章借用了很多 LISP 原语, 所以只有一半理解, 第五章从头实现一个假想的电脑: 固定逻辑计算机, 寄存器, 汇编语言, 重新实现解释器, GC, 最后再重新给这套假想的电脑实现一个到假想汇编的编译器 (最后一个作业是用 C 重写一遍…). |
28
Kirsk 2021-02-03 13:54:03 +08:00 via Android
这本书我都搞不懂好在什么地方 只看了目录就不想看了 大概太菜
|
29
namelosw 2021-02-03 15:05:09 +08:00 1
@levelworm 我觉得能看懂代码就完全没问题. 这本书前面都在讲上层建筑, 后面讲基础设施, 走的两个方向, 关系的确不大.
|
30
hurryning 2021-02-03 15:12:38 +08:00
干就完了
|
31
asanelder OP @546L5LiK6ZOt #18 俺就是好奇这书到底有没有说的那么神
@zwpaper #20 soga! @levelworm #21 不纠结 @xpresslink #24 打算就是 scheme 原汁原味 @namelosw #25 铁子给的建议好啊, 大大减轻了俺的抵触心理. 书就应该这么看! 俺现在越来越期待了 有一个问题, 现在函数式语言可不可以用 Scala? |
32
namelosw 2021-02-03 18:55:36 +08:00
@asanelder 这本书很多内容用 Scala 很难写, 因为 Scala 是静态类型语言. 宏也没有 LISP 那么简单好用.
日常用 Scala 函数式风格肯定是没问题, 毕竟向 Haskell 对齐的语言. |