我非常高兴Douglas Crockford's recent lecture series,尤其是涵盖编程语言历史的演讲。我想更详细地了解这个主题。
考虑这个问题与语言无关。我对教编程的书不感兴趣。我对讨论在设计一种或多种语言时做出的决定的书感兴趣。
答案 0 :(得分:6)
以下三个是IMO必读书籍适用于任何编程语言junky:)
答案 1 :(得分:5)
ACM每15年举行一次History of Programming Languages会议(亲切地称为 HoPL </ em>)。诉讼程序质量非常高,并且可用,仅在ACM付费墙后面。 (但是,如果您从大学,学院或学校的IP地址访问它们,您应该能够访问它们。)
对于HoPL-III (2007),Guido van Rossum想提交一篇关于Python的论文,但他未能及时满足审核要求,所以他published it in form of a blog instead。
除官方会议程序外,一些主持人还免费发表了他们的论文。此外,一些主持人在不同的场地再次发表同样的演讲。例如,Guy L. Steele,Jr。和Richard P.“Dick”Gabriel重复了他们的“50 in 50”谈话(正如你可以想象的那样,如果你曾见过Guy Steele或Dick Gabriel的演讲,这不是真正的谈话,更像是与诗歌大满贯相交的多媒体表演艺术与百老汇相遇,它提供50种编程语言,每种语言50个。
正如上面提到的@Missing Faktor,不仅 Project Oberon ,而且所有的Niklaus Wirth的语言非常有充分的记录:Algol-60 ,Algol-X,Algol-W,Pascal,Modula-2和Oberon。
答案 2 :(得分:2)
计算机程序的结构和解释。我有一份打印副本,但现在可以免费在线获取:
http://mitpress.mit.edu/sicp/full-text/book/book-Z-H-4.html#%_toc_start
答案 3 :(得分:1)
C ++的设计与演变
答案 4 :(得分:1)
答案 5 :(得分:1)
Ada编程语言设计的基本原理:
http://www.amazon.com/Rationale-Design-Programming-Language-Companion/dp/0521392675
虽然这本书讨论了该语言的原始版本,但仍然有趣的阅读。对于每个设计决策,从程序员和编译器实现者的角度来看,都包含了基本原理和讨论。
答案 6 :(得分:0)
Sequential Pascal缺少的重点是指针。但是,考虑到对Sequential Pascal程序的限制,你可以用指针做的一切都可以用数组索引做,并且以更安全的方式,“安全”,因为它是不可能的(并且检查由编译器!)做非法的事情。