计算多条线段总长的lisp程序_?计算机大师Alan Kay:这些才是被遗忘的计算机经典...

程序员书库(ID:OpenSourceTop)编译链接:https://huyenchip.com/2019/08/05/free-online-machine-learning-curriculum.html

前不久,Quora上出现一个问题,发问者希望经验丰富的程序员和计算机科学家,谈谈他们认为每个新手程序员应该阅读的书籍有哪些,甚至是那些已经被人遗忘的著作?

d222a60eb18f1f9c29fde4ad899f6157.png

这个问题成功引起了Alan Kay的注意?什么?你居然不知道Alan Kay是何许人也,天才计算机大师阿伦凯,他是Smalltalk面向对象编程环境语言的发明人之一,也是面向对象编程思想的创始人之一,他还是笔记本电脑最早的构想者和现代Windows GUI的最初尝试者,2003年图灵奖得主。

以下是他对这个问题的回答:

时至今日,我依然是《Lisp 1.5 Programmers Manual》这本书的忠实粉丝,这个版本的语言已经不适合我们了,但这本1962年创作的书,是一本绝对的经典

a0c1b5ba65f4c5793ce3c66a1c66d3f3.png

它首先介绍了了John关于Lisp的第一篇论文,并在几页示例中实现了这些想法,最终在第13页上用Lisp eval和apply本身定义。此外,书中还有许多其他发人深思的想法和例子。

学习本书最快的方法是深入了解作者在书中做了什么以及他们是如何做到的,然后尝试以多种方式重写第13页的内容。在“一个lisp”中使用递归和不使用递归有什么区别(关于这点可以看看Lisp 1.5已经了解了EXPR和FEXPR(在调用之前没有评估其参数的函数)

什么是整洁的自举路径?你如何将它与Val Shorre的“Meta II”程序化解析器结合起来,创建一个真正可扩展的语言?要怎么做才能触及“对象”?在这里有三四种不同的方式实现,那哪一种才是最有趣的(提示:在一种执行语言中,有多少种不同的方法可以定义“闭包”?使用Lisp原子作为对象的模型怎么样?等等)

本书最主要的思想就是Lisp不仅仅是一门编程语言,而且是一种非常深奥的“建筑材料”,它足够整洁,可以用来思考,而不仅仅是创建程序。

69e0faab6133d1b2df8b0256c02cf943.png

Dani Richard提醒我别忘了Marvin Minsky的《Computation:Finite and Infinite Machines》这本书,这是我最喜欢的书籍之一,Marvin真的很擅长写作,这本书实际是一本“数学书”——有很多想法、定理、证明等等,以一种非常友好的形式呈现,在这本书中有许多有趣的东西值得你去思考,能够引导读者像书中一个思考的方式,才是最有价值的。

124e8454db6d26c95f5362479aa369cf.png

《Advances in Programming and Non-Numerical Computation》于上世纪60年代中期,书中的论文发表在1963年应该的夏季研讨会上。最具代表性的论文是Christopher Strachey和Peter Landin等人的作品。这是Bob Barton1967年在他著名的高级系统设计课程中让我们读的书籍之一。

09184fe074d016a598d2250a4605b877.png

试试弗雷德·布鲁克斯(Fred Brooks)的《人月神话》,从团队的系统构建中获得永恒的真理(和陷阱)。

1a2557215cdbd41b4df01a5976e2907f.png

试试赫伯·西蒙(Herb Simon)的《The Sciences of the Artificial》用一种比当今大多数人更强的思维方式来思考计算机——以及“计算机科学”可能意味着什么。

053e8b8eeda49a3fa6bf3df8245ad4db.png

Ken Iverson的《A Programming Language》,这本书与《Lisp 1.5 Programmers Manual》有着同样的思想,这些旧思想的学习方式是专注于探索最独特和强大的方法,(今天我们已经知道如何更好地改进Lisp和APL,但此书中讲述是深刻的本质可能更容易掌握原始想法的表现)。

我最喜欢Dave Fisher 1970年的CMU论文《Control Structures for Programming Languages》,尤其是前100页直到现在依然很有价值,帮助你思考程序设计和实现

80年代,Kiczales等人的《The Meta-Object Protocol》,一部分和示例是必须阅读和理解的。

Joe Armstrong的博士论文,里面有他关于Erlang多年的宝贵经验,于2003年出版。

不知道,以上这些书籍,有没有你看过的呢?

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值