algol语言

您所在的位置:网站首页 algol是什么意思 algol语言

algol语言

2023-10-21 09:25| 来源: 网络整理| 查看: 265

algol语言

安德鲁·麦克格特里克(Andrew McGettrick)在其出色的教科书《 阿尔高68:第一和第二门课程》的序言中写道:

“本书源于1973-4年在斯特拉斯克莱德大学首次面向一年级本科生的演讲,其中许多人以前没有编程知识。许多学生不是将计算机科学作为主要课程,而只是将其作为一门课程。因此,他们是合适的听众,向他们授课,试图讲授Algol 68作为第一门编程语言。”

也许这句话对我来说尤为重要,因为我也是1973-1974年的一年级学生,尽管我在另一所大学-不列颠哥伦比亚大学。 此外,“追溯到那时”,UBC的入门级计算机科学课程在第二年使用Waterloo FORTRAN进行了讲授,并引入了一些IBM 360 Assembler。 没有什么比Algol 68更具异国情调了。就我而言,直到我三年级才接触Algol 68。 也许这次等待,再加上其他编程语言的经验,使我终生痴迷于这种被低估且精彩的编程语言。 多亏了Marcel van der Veer,他创建了一个非常好的Algol 68实现,称为Algol 68 Genie,现在终于在我的发行版资料库中,终于使我得以在闲暇时探索Algol 68。 我还应该提到,马塞尔的书《 学习Algol 68 Genie》对于新手和Algol 68的进修课程都非常有用。

因为我一直在重新发现Algol 68感到非常开心,所以我想我会分享一些想法和印象。

人们怎么说Algol 68

如果值得阅读Wikipedia上的Algol 68概述 ,那么真的值得阅读《算法语言Algol 68修订报告》中的这一段:

“原始作者很高兴地表示感谢,并感谢WG 2.1成员和许多其他对Algol感兴趣的人的全心全意的合作,支持,关注,批评和暴力反对。”

“批评和暴力反对”-哇! 实际上,一些委员会成员对委员会的发展方向非常不满意,以至于他们离开并开始了自己的语言定义项目,至少部分是出于对Algol 68的抗议。例如,Niklaus Wirth厌倦了Algol的复杂性68, 开始设计Pascal 。 在大约1984年至2000年左右编写并支持了相当多的Pascal代码后,我在这里告诉您,Pascal距离Algol 68尽可能远。 在我看来,这正是沃思的观点。

丹尼斯·里奇( Dennis Ritchie )在1993年在马萨诸塞州剑桥举行的第二届ACM编程语言历史会议上发表了演讲 ,他比较了Bliss,Pascal,Algol 68和C。在这次演讲中,他提出了一些有趣的观察:

所有这四种语言都是“基于这种古老的,古老的机器模型,它们可以拾取,执行操作并将它们放置在其他地方”,并且“在很大程度上受到Algol 60和FORTRAN的影响”。 “当Steve Bourne(是创建Bourne shell的人)带着Algol 68C编译器来到Bell Labs时,他使它完成了C可以完成的工作;它具有Unix系统调用接口,等等。” “我认为该语言确实确实在接受度方面受其定义的影响。尽管如此,它确实非常实用。” “在某些方面,Algol 68是我一直在讨论的语言中最优雅的语言。我认为在某些方面,它甚至是最具影响力的语言,尽管作为一种语言本身,它已经消失了。”

关于Algol 68的更多观点在当今的互联网上仍然很突出。 很多都是负面的,但是哦! 我怀疑其中很大一部分都没有实际使用情况。 Rosetta Code Wiki上提供了一个非常有趣的地方,可以找到只是开始使用该语言的编码人员(还有许多其他人员,其中有些晦涩难懂)。 去那里,形成您自己的意见! 或关注我,因为我对Algol 68感到满意的地方不是那么好。

关于Algol 68的重要内容与我相关

Algol 68作为一种编程语言,提供了一些独特而有用的思想,这些思想在当时具有创新性,并从那时起在某种程度上以其他语言出现。

修订报告中明确解释了关键设计原则

设计Algol 68的委员会受到一套非常明确的原则的推动:

描述的完整性和清晰度(借助二级语法的使用,这引起了很多负面意见) 正交设计; 也就是说,用语言定义的基本概念可以在可以被认为是“合理的”的任何地方使用。 例如,每个可以合理预期产生值的表达式实际上都会产生一个值。 通过精心的句法设计来保证安全性(再次说明二级语法); 大多数与其他语言的语义概念相关的错误都可以在编译时检测到。 效率,因为程序应该高效运行(在当今的硬件上),而无需花费大量精力来优化生成的代码,此外: 不进行运行时类型检查,除非在运行时提供替代配置的


【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3