flq*_*flq 2 history language-features language-design
编程已经走过了漫长的道路.我还是比较年轻(第一台计算机:C64),因此我认为编程中的很多东西都是理所当然的,这些东西显然是在某些时候引入的,并且促进了现在常见的编程方式.
接下来是一个(绝不是完整的)功能列表,我希望知道哪种语言以及何时介绍它们:
如果可以,请尝试使用一些参考来备份您的声明.如果您觉得我错过了一个重要的编程语言功能,也应该感谢您的介绍,请对此问题进行评论,以便将其添加到列表中.
更新: 我认为编程语言不能引入汇编程序中无法实现的任何东西,我宁愿寻找能够为"凡人"提供某种功能的语言.
Lisp的.1958年.
或者,
功能介绍 - 阿隆佐教堂的lambda演算,1930年
编译语言 - 格雷斯霍珀,1952年
解释语言 - Lisp,1958年,也许之前的事情.
条件和循环结构 - Bletchley Park Bombe 20世纪40年代(在一个循环中运行).提花,1801年
阵列 - 作为一个连续的记忆块,有一个索引,Bletchley Park或Manchester Baby,20世纪40年代
字典(Hashtable) - ?
允许多线程 - 提花,1801; Multix 1965
函数式编程(作为数据的功能) - Godel,20世纪30年代
面向对象
interface小号泛型 - 泛型方法(Lisp)或参数类型(modula ???)?
面向方面的编程 - 常见的lisp元对象协议,20世纪80年代后期
元编程 - lisp宏,有时在50或60年代