我抓住了学习函数式编程的bug.所以我的下一个自学项目是通过计算机程序的结构和解释.不幸的是,我从未学过Lisp,因为我不是大学的CS专业.
虽然SICP并不强调编程工具,但是练习需要选择一种类似Lisp的语言.似乎Scheme的一些实现将是阻力最小的路径.另一方面,我听说有人使用过Common Lisp和Clojure.在我看来,Common Lisp或Clojure更有可能在生产代码中使用,因此我的简历稍微好一点.顺便说一下,我完全认为学习语言本身就是值得的,但学习一种帮助我简历的语言仍然是一个好处.我是资本家,也是关于我学习的学者.
如果你不得不自学SICP,你会选择哪种语言?为什么?理想情况下,我想使用可以在JVM上运行的语言.我当然可以使用REPL与bash和emacs一起工作的语言.
附加:有没有人试过不使用Scheme阅读SICP?如果是这样,你的经历是什么样的?
使用Scheme.它是现存最简单,最简单的语言之一,您将花费很少的时间学习它以理解SICP.一旦了解了SICP,您将看到这些概念如何适用于任何语言.
使用DrScheme.正如其他人所说,Scheme是一种简单的语言,DrScheme是一个很好的使用它的环境,其中有很多支持和中等到良好的文档.
不是直接的答案,但我希望这些信息对于通过SICP工作的任何人都有用.请务必查看以下视频:
http://swiss.csail.mit.edu/classes/6.001/abelson-sussman-lectures/
每集有20集,每集一小时.他们于1986年由Abelson和Sussman为Hewlett Packard员工颁发.我把它们放在我的iPod上并在通勤时观看它们.迷人.
此外,该书的全文可在http://mitpress.mit.edu/sicp/在线获取.