在ALGOL曾用于“主流”编程吗? [关闭](Was ALGOL ever used for “

2019-08-16 16:23发布

我知道, ALGOL语言是超级尤伯杯极为作为理论语言很重要的,它也有多种实现按照维基百科的。

然而,什么是不清楚的,是ALGOL(纯ALGOL,没有任何及其衍生物像Simula中的)以往实际用于任何方式任何“真正”的编程?

通过“真正的”,我的意思是用于除编程语言/ CS的研究,其他几个不错的大型项目或由显著一些开发商(比如> 1000)。

就个人而言,我做过的唯一的ALGOL编程是在纸上,从而好奇心。

Answer 1:

Algol58似乎一直是最成功的重要应用方面。

维基百科:

JOVIAL是全称是“国际算法语言的朱自己的版本。” “国际算法语言”是为ALGOL 58它的开发在1959年撰写的软件为军用飞机儒勒·施瓦茨电子最初提出的名称。

然后:

使用JOVIAL显着系统包括军事星通信卫星 , 高级巡航导弹 , B-52 , B-1B , B-2轰炸机, C-130 , C-141 ,和C-17 运输机 , F-111 , F-15 , F-16 (到块50之前),和F-117战斗机, LANTIRN , U-2飞机, E-3哨兵 AWACS飞机,海军宙斯盾巡洋舰,陆军多管火箭( MLRS ),陆军UH-60黑鹰直升机, F100 , F117 ,和F119 喷气发动机 ,该NORAD防空&控制系统(休斯HME-5118ME系统)和RL-10火箭发动机。 机载雷达具有嵌入式软件JOVIAL系统包括APG-70 , APG-71和APG-73

ALGOL 68是在为同一目的DRA的一部分使用。 比照 维基百科:

在“”“ 国防研究局 ‘’”(通常被称为‘’‘DRA’‘’),是一个执行机构英国国防部 (MOD)从1991年4月至1995年4月当时的DRA是英国最大的科学和技术组织。

DRA的Algol68的编译器终于开源在1999年4月,现在可用于Linux的下载从SourceForge。 (不过,对于“一个解释Algol68g ”更容易使用)。

ICL的Algol68的是/是S3 -它是由英国公司开发国际计算机有限公司 (ICL)为其2900个系列大型机。 这是一个系统编程语言基于ALGOL 68,但对齐由2900系列所提供的数据类型和运算符。 这是操作系统的实现语言VME 。

有(至少)两个英国其他操作系统- 的Flex和Cambridge_CAP_computer -写在Algol68的变种。 而且1苏联OS: Эльбрус-1(厄尔布鲁士-1) ,但我还没有找到任何他们的源代码。 (如果任何人都可以找到并分发到这个源代码,请让我知道)

BTW:我认为,VME 仍在运行-生产-作为一个Linux / UnixWare的客户端虚拟机。 晴在的国家联合体自定义/移民服务。

此外,同期的苏联用Algol68的,比照历史链接 。 Algol68的是俄语电话交换机使用。 而Algol58在俄罗斯“使用暴风雪号/Буран ”航天飞机着陆系统。

Algol68的是在1968年的国际化,我怀疑还有其他国家的其他陵项目。 尤其在德国,荷兰在日本和中国,但我没有细节。

如果你想真正试训Algol68的和/或有助于你的代码,看看Rosettacode的ALGOL 68库 ,那么作为一类项目尝试“的一个未实现的任务 ”。



Answer 2:

没有像应对2岁的线程。 我在ALGOL程序几乎每天都有。 我在Unisys的大型机的ClearPath和广大的系统代码程序员写的ALGOL或变种。 该宝来B5500是真的各地的设计语言,所以这是一个非常高效的语言/编译过程。 当然,这个版本ALGOL与像有限类型一些扩展(结构块)等

i := 80;
while i > 0 do
   begin
   scan ptrRay:ptrRay for i:i until in ALPHA;
   scan ptrEnd:ptrRay for i:i while in ALPHA;
   if i > 0 then
      begin
      replace nextToken by ptrRay for (offset(ptrEnd) - offset(ptrRay)); 
      end;
   end;

该代码扫描ALPHA仅令牌。 它使用OFFSET函数比用自己剩余计数数学(一,starti等)多一点昂贵;



Answer 3:

和汤姆一样,我在ALGOL程序几乎每天 - 而我也是一个优利的ClearPath。 ALGOL一直是我的按揭还款的更多年的比我想记住的主要来源。



Answer 4:

当我开始编程,大陵五是唯一可用的编译器。 是的,这是主流,直到我们得到了一个Fortran编译。



Answer 5:

为了跟进THEMIS'的回答,整个宝来‘大系统’系列(5000,5500,5700,6500,6700 ......)真的设计运行良好陵。 操作系统,编译器和主要系统实用程序写在大陵; 如果这不是“真正”的编程是什么?

准确地说,在产品系列宝来陵延伸到一个名为ESPOL超的生活。 当伯勒斯带出了“小系统”系列(1700,1800,1900系列),它们定义了另一个名为SDL在该行的操作软件的编写(系统开发语言)类ALGOL语言。 访问SDL被限制出于安全原因。 SDL的一个变体,随后用一小部分去掉了“priveleged”功能创建的。 产生的语言,称为UPL(用户编程语言),是可供用户使用的。

我们有些人还记得那句“类ALGOL语言”被用来描述任何编程语言,面向块的控制结构和变量范围。 类ALGOL语言广为人知的例子包括PL / I,Pascal和(...等待它...)C.



Answer 6:

大陵五是主要的编程语言宝来B5000 。



Answer 7:

然而,什么是不清楚的,是陵(纯陵,没有任何及其衍生物像Simula中的)以往实际用于任何方式任何“真正”的编程?

请避免术语“真实”的节目。 “真实” - 而不是为了什么? 想象力?

通过“真正的”,我的意思是用于除编程语言/ CS的研究,其他几个不错的大型项目或由显著一些开发商(比如> 1000)。

是。 它被用于一定数量的项目上工作了一定数量的开发商。

只是,什么是平时常常被误解今天这一点; 在那些日子里,电脑是不完全是一个家庭的商品。 该死的,他们不是30年前,60独少。
编程是在其要么在电子政务的所有权(军事,学术,各种机构),或在民营企业(大型企业)计算机中心来完成。 和编程是不是一种职业 - 这是一些东西,工程师,数学家,scientiscs和用来做时,他们的工作是在纸上做了......或者,他们已经专门做这为他们运营商等。 通常妇女,谁可能会或可能还没有在那个特定领域的科学背景 - 他们是“语言翻译”,在没有更好的术语的(和我的英语不好)。

编程的理论和研究是在它的起点......供应商被几(自然不合作对方)......他们每个人用自己的扩展,并经常为一个书面方案没有与其他供应商的系统中正常工作。
有没有你有这样和一个“正确的方式”做某事,你用什么抓住你能想出解决您的问题。

但是,我已经渐行渐远。 让我回去的人数。 这还要其他几种语言文字; FORTRAN和COBOL,例如。 人们说,“很少使用”。 这是不正确的。 什么是真正的是,一小部分人今天使用它,但人们更大%的人使用使用它。

正如我所说的,在那些日子里,只有科幻。 与工程。 社区用来做什么的。 而他们的数量相对较少,相对于总人口。 如今,每个人都使用电脑,但工程师,数学家和类似的绝对数量,几乎是相同的。 如此看来,没有人使用这些语言了......而在现实中,对于某些专业的语言(当然,现在这个去比ALGOL FORTRAN和COBOL,更多)的用户数量几乎是恒定的。

就个人而言,我做过的唯一的大陵五规划是在纸张上,从而好奇心。

我知道我没有回答你的问题,只是想清楚这一点。 大陵五有点“beofre我的时间”。



Answer 8:

我的第一个编程经验是由北方天然气公司拥有的宝来B5500在1970年开始我COBOL开始了,但切换到ALGOL(实际使用两者)时,他们需要的是写一个大的石油和天然气租赁信息系统额外的支撑几乎完全在ALGOL。 当时有两个规划部门,业务系统和科学计算。 科学计算部门ALGOL和FORTRAN编程,而业务系统部门大多由ALGOL零星的COBOL。 从B5500至B6500,B6700,B6900,B7800,B7900和北方先进的,而我在那里。 我最终转移到技术支持部门,钻进制作和支持MCP补丁来定制北需求的系统。 那很有趣!

简短的回答这个问题。 是。 北方有一些写在ALGOL应用系统。 当然,这是伯勒的版本ALGOL(扩展ALGOL)的。



Answer 9:

宝来B5500扩展陵是我在60年代末大学(澳大利亚莫纳什大学)大量用于天体物理学,语言学和统计研究。 它也可用于商业应用,帮助支付账单的计算机中心。

我写这篇文章,我跑在从球队在塔斯马尼亚复古b5500的宝来B5500仿真器的最新版本陵方案。 该模拟器完全运行在浏览器和忠实型号处理器,磁盘,磁带,读卡器,行式打印机,打卡机和数据通信齿轮!

你可以在阅读有关项目http://retro-b5500.blogspot.com/和http://code.google.com/p/retro-b5500 ,你可以写说是最优秀的Algol机器做过陵的方案(也许除了其继任者的B6700)。

一位来自莫纳什的博士后从IBM汇编程序巴勒斯COBOL在大陵,这是用来从IBM 360在国营燃气及燃料总公司所有的计费应用程序迁移到宝来6700s的写了一个反向编译器。



Answer 10:

早在1970年,我帮助开发为皇家荷兰海军快活的编译器。 它的一个很大的优势是,它是写在懂的享受,因此,我们都得到了成为相当不错的快活的专家。 事实上,作为测试周期的一部分,我们将汇编编译器,虽然本身的最新的化身和运行上,我们所有的测试集。 如果通过我们将发布第一个编译器。 因此,每个版本有编制本身的能力和编译器可以通过所有的测试。 由于每一个发现错误总是加入到我们的自我检查测试设置编译器地改进和提高质量。 当我们离开这个项目的时候,我们有没有已知的错误......我一次且只发生过一次。



Answer 11:

我在大陵/快活编程早在上世纪70年代的军队。 我喜欢的语言。 你不能这样做递归在Fortran和我常常可以使程序通过使用正确的数据结构和一点点递推容易得多。

我离开了那项任务之后,我发现,该项目的其他开发人员不想保持快活代码,并试图复制我在Fortran语言做了。 它只是没有工作,是慢得多。

我通过挖掘到了快活的编译器的源代码了解编译原理。 啊......那些日子。



Answer 12:

大陵五是艾略特4100机器上很好的实现,并广泛用于开发在BP研究中心早炼油工艺模拟60年代末。 然而,在该时输入/输出没有被明确定义的(机器之间变化),并在BP它是由Fortran的IV迅速取代写在严格的Fortran IV方案将运行在几乎任何机器变化 - IBM,Univac公司,阿特拉斯,等等等。



文章来源: Was ALGOL ever used for “mainstream” programming? [closed]