数学 [更新] 探寻 Ruby 原力——SICP 公开课中英双语字幕

deathking · 2013年04月04日 · 最后由 aerofloyd 回复于 2014年10月09日 · 20121 次阅读

[SICP] 计算机程序的构造和解释

探寻 Ruby 的祖宗之一——Lisp 的魔力


不知道怎么在帖内嵌入 Flash 视频,直接放 Youku 专辑地址吧: http://www.youku.com/playlist_show/id_18958522.html


拖了一年有余了,终于更新了,真是泪流满面。

高阶过程介绍了如何抽象地思考,复合数据介绍了如何对数据建立抽象屏障。


想了很久,要不要把这个东西在这里放出来。一来是 SICP 用的是 Scheme,不是 Ruby,所以放在 Ruby-China 似乎不是很好。但转念一想,Ruby 确实从 Lisp 里面“借”来很多东西,很多是 Ruby 对 Lisp 思想的延续。我当初接触 Ruby 时,花了很久的时间才体会到了 Ruby 的思想,然而,当我后面看到 SICP 这本书,接触到 Lisp 这个老前辈时,发现他留下了 Ruby 太多太多的珍宝:

  • 代码和数据之间没有不可逾越的鸿沟
    • 符号(Symbol)
  • 高阶函数
    • Ruby 里面的块、lambda 方法
    • Lisp 里面的 lambda 过程
  • 通过提供一致的接口实现的数据抽象
    • Ruby 的鸭子类型
  • 可变参数
    • Lisp 里的点
    • Ruby 里面的星
  • 元语言抽象
    • 用 Lisp 构建 Lisp 或其它语言
    • Ruby 是一门很好的 DSL 语言

例如,作为 OOP 语言的 Ruby 所强调的“模板方法”这种设计模式,很早就体现在 Lisp 所强调的“提取公共模式”的抽象方法上了。所以,我决定还是放出这个系列视频,让大家同我们一起去探寻其中蕴涵的思想。


本视频由
哈尔滨工业大学 IBM 技术中心 FoOTOo 实验室负责统筹翻译
哈尔滨工业大学清影 PT 压制小组进行压制和后期制作。

由于我们都是高校学生,所以只能利用课余时间进行翻译工作。在加上校正、打轴、后期等字幕制作工作较为繁琐,所以进度很慢。整个翻译项目托管在:https://github.com/FoOTOo/Learning-SICP。欢迎大家给我们提出意见和简易,并对翻译错误或者可以提高的地方进行指正!

DeathKing

Long live SICP!

强烈建议大家学习 SICP。这本书(门课程)对非科班出身的开发者尤其有帮助。

收藏先..以前想看 SICP 的结果没看下去..

书买了,一直没看

匿名 #4 2013年04月04日

聪明的家伙头发都很少~

👍 👍 👍 记得刚刚开始学编程的时候,每天晚上下班后回家死磕 SICP 2 小时,坚持了小半年...

#5 楼 @lgn21st 那收获应该还是挺大的。SICP 不但有编程的内容,里面也涉及到了很多数学的东西。像什么 lambda 演算,基本上是就跟泛函分析差不多了。

目前在学 scala,也提到需要参考 SICP. https://class.coursera.org/progfun-002/class/index

Courseera 不错。现在视频教程真 TMD 的多啊。

初二就接触了 Ruby ..... 楼主好年轻

没有做题的翻了一遍 都不好意思说自己看过了

SICP 看到第四章看不下去了。中途去学 cousera 的 Programming Languages 课程,那个老师讲得很通俗易懂,通过 ML,Racket,Ruby 三种语言,介绍了 closure,函数式编程,type system, OOP,等各种基础概念。感觉这个这个非常适合我这种基础差的人。

#9 楼 @hbin 是因为做 RPG Maker 的脚本所以才弄的,RGSS 嘛~(笑。不年轻了,大一。

SDL?-> DSL?

#11 楼 @ian2hao 看第五章,我今年 3 月 20 号看完第三章,也是卡在第四章,第四章的题目有点难度大,直接跳第五章吧,第五章好一些,正在第五章的 garbage collector

#13 楼 @magiclin 对,应该是 DSL,笔误。谢谢提醒,已改正。

绝赞啊!!!

來給樓主們支持,你們加油...雖然這本書我看得不是很懂,希望之後也能幫得上忙:)

非常好的教程~ 教授 about 的音发的很特别~

翻译了两课?

#19 楼 @keating 持续跟进中(键 Github 项目),毕竟我们还是学生,没法全职投入到这个工作上面,而且除了翻译还要为字幕做后期和特效。

初二就接触了,后生可畏啊

22 楼 已删除

@DeathKing 我说怎么一下子 star 到了 60 多个了,原来你发到这里啦。

话说计算机本科就三本书《Structure and Interpretation of Computer Programs》,《Computer Systems: A Programmer's Perspective》,《Introduction to Algorithms》

前几天刚在 lz 博客上看到,就在这儿发现了

在这里也看到.... 话说还要翻译吗?youtube 上直接看英文字幕 就行了

看看先

怎么优酷上只有两个啊?!

#29 楼 @diguage 这几天要继续发……学生党,办事慢,求谅解。

@diguage @aerofloyd 更新咯~~~后面的翻译我们会加快进度的。

真的是拖了一年之久了 我也是哈尔滨的学生 能否留下联系方式 希望和楼主交友

需要 登录 后方可回复, 如果你还没有账号请 注册新账号