10 种更具影响力的编程语言 十大最热门世界编程语言排行榜( 三 )


这些概念很多是通过C进入主流编程的,C是BCPL和PL/I的结合,C甚至应用了PL/I的注释语法
死亡原因:所有FORTRAN程序员都认为它太像COBOL了,而所有COBOL程序员都认为它太像FORTRAN了 。IBM试图用一种语言来处理这两种既定的语言,但这种语言要复杂得多 。他们是唯一应用编译器的团队,但它没有帮助,这意味着其他所有人都不信任供应商锁定 。当IBM能在这两个问题上取得进展的时候,更广阔的计算世界已经进入了微型计算机时代,PL/I被BASIC淘汰了 。
展开:
pl/I的选择 。SIMULA 67背景:奥勒·达尔和克利斯登·奈加特,1967年 。他们扩展了ALGOL进行模拟 。首先,他们开发了SIMULA I,它有一个特殊的模拟器和“运动”语法 。SIMULA I获得了一些早期的应用,但他们对语言的“专业化”程度和模拟中大量重复的代码感到不满 。他们希望创建一个更通用的框架来表示一般的事物,而不仅仅是模拟 。
他们的想法是允许用户应用多态函数分析来定义称为“类”的新类型 。然后,用户可以将仿真特征作为特例构建在对象系统中,以便用户可以根据自己的具体需求轻松定制相应的仿真特征 。
主要意义:虽然SIMULA不是之一个“真正的”OOP语言,但它是之一个有合适对象的语言,为其他语言的构建奠定了基础 。这包括类/对象、子类、虚 、屏蔽属性等的拆分 。它激发了1967年后几乎所有关于物品的学术讨论 。CLU和曼梯·里都认为模拟是他们重要灵感的来源 。Bjarne Stroustroup在SIMULA中完成了他的博士学位,并最终将其许多思想集成到C ++中 。
原因:在同一篇博士论文中,Stroustroup声称SIMULA速度太慢,无法广泛应用 。如果你不在大型机工作,那么祝你一切顺利 。值得一提的是,Smalltalk-80采取了同样的思路,甚至更进一步,在其背后附加了13年的摩尔定律 。即使是Smalltalk也经常被嘲笑太慢 。每个人都意识到他们可以在SIMULA中集成到更快更简单的语言中 。
浏览:编译SIMULA:技能来源的历史研究,SIMULA的历史 。
帕背景:尼古拉斯·沃斯,1970年 。在ALGOL-68的结构对于Wirth的爱好来说变得过于复杂之后,他抓住了ALGOL-60的精髓,开发了Pascal 。Pascal最初是作为“CS入门”语言开发的,到20世纪80年代初,它已经成为新闻组工作平台上第二流行的语言 。沃思认为所有的Pascal、Modula和Oberon族都是一个统一的语言概念 。
主要意义:帕斯卡没有引入任何新的思想 。这是一种刻意保守的语言,洪都博客,它试图挑选出过去十年中更好的部分,并为他们提供一个统一的包 。Pascal把ALGOL文法带出学术界,以至于ALGOL: =的赋值文法被称为“Pascal风格” 。从这个角度来看,大部分看起来像ALGOL的语言特征很可能是受到了Pascal的启发,而不是ALGOL本身 。
虽然Pascal不是很有创意,但是它的变体很有创意 。Wirth还率先提出了“逐步求精”的概念,作为编写严谨软件的技巧 。这最终导致了Modula(普及了一级软件模块)和Euclid(之一个用于生产的情景验证语言)的出现 。
死因:我这里称之为“附加攻击” 。与这个列表中的大多数其他语言不同,Pascal没有重大的结构障碍,也没有强有力的竞争对手 。当然和C竞争,但是很长一段时间,还是表现不错的 。人们通常将其归因于“为什么Pascal不是我最喜欢的语言”这篇论文,但答案过于简洁,历史要复杂得多 。此外,德尔福在TIOBE和PYPA指标上依然排名靠前,所以并没有像SIMULA那样彻底消亡 。对帕斯卡坠落的精确分析比本文其余部分要长得多 。
浏览:帕斯卡,帕斯卡和他们的继任者 。
特许人寿保险人(Chartered Life Underwriter)背景:芭芭拉·利斯科夫,1975年 。Liskov希望处理抽象数据类型 。就这么发生了 。这就是CLU的全部原因 。
主要意思:CLU可能是人们从未听说过的最有影响力的语言 。迭代器?CLU .抽象数据类型?CLU .通用?CLU .变态复习?CLU .
我们没有采用相同的术语,所以它不是100%来自CLU,但它仍然是 。在接下来的十年里,CLU将会出现在所有的语言规范中 。CLU做了很多 。
为什么:CLU是一种富有表现力的语言 。利斯科夫希望人们接受她的想法,而不是这种特定的语言 。他们做到了:如今,几乎所有的语言都应归功于CLU 。她一读完《CLU 》,就去了Argus,这原本是为了展示她对并发性的想法 。它没有采取几乎相同的 ,留下了许多有待发现的东西 。
浏览:CLU的历史
机器语言(Machine Language)背景:罗宾·米尔纳,1976年6月,Milner正在建造LCF校准器,这是之一批校准器的助手之一 。如果采用准确的模式来编译证书,LCF可以检查它是否准确 。为了赞助证明的写作,米尔纳创造了一种基于健全的数学情境的元语言,这在当时意味着严格的静态类型和高阶函数 。最终,ML被缩放到标准ML 。