Fortran突然热再次热。 但它的未来仍然远非肯定

2021-05-05 20:46:00

Fortran是最古老的商业编程语言,在20世纪50年代在IBM设计。甚至多年来,程序员已经预测了它的消亡,64年后仍然踢,用户在包括来自美国宇航局的顶级科学家,包括在世界上使用它的热门科学家们,在世界上使用它'最强大的超级计算机。

它甚至最近 - 非常出乎意料地 - 在最受欢迎的节目语言中再次出现,尽管第20位。这种复苏已经通过对科学号码嘎吱嘎吱的巨大需求来解释; Fortran非常擅长的东西。

但很少有人争辩说,由于科学家们植入了Python或朱莉娅等较新的语言

美国能源部的科学家ondřejcertik'洛杉矶阿拉莫斯国家实验室(LANL),是通过两个主要项目复活Fortran的使命。 Lanl是美国第二次世界大战的第2时代曼哈顿项目开发了第一个原子弹的关键,也是基于CRAY XC40的三位一体,世界'第13最快的超级计算机。

许多证书' S项目主要是在Fortran和他'试图让Fortran更有吸引力的开发人员。

"当你提到Fortran时,很多人会争辩它不会死亡。我会争辩它正在染色," CERTIK告诉ZDNET。

"在我的工作中至少有人远离它。我们仍然有数百万条代码,所以我们仍然有20年来的福斯特兰代码,但对于新项目,人们不再使用Fortran。"

他的第一次努力是LONTRAN编译器,这将有助于将FORTRAN代码转化为现代语言,包括Python和Julia。第二个是Fortran-Lang网站,为Fortran程序员提供Python和Julia开发人员 - 一个社区合作改进的空间。

"考虑朱莉娅的一种方法是他们服用了Python,并使它快速,"他说。 "与Lfortran一起,我们正试图走向相反的路线:采取像Fortran这样的快速语言,看看你是如何制作的。"

Fortran本身仍然是通过两个主要机构积极开发的:美国Fortran标准委员会,J3,这是全球Fortran Body,WG5所设定的标准的主要影响者。英特尔,NVIDIA,ARM,IBM,AMD,DOE,NASA和其他在J3上表示。

"我认为今天的Fortran处于一个非常困难的位置," Tom Clune表示,在NASA'戈达德太空飞行中心领先软件集成团队和全球建模和同化办公室。

在J3 Fortran委员会的主要代表是NASA和#39;这门语言,该语言是支持支持旧代码的新功能的问题。

"一方面,有任何数量的更新语言具有似乎可取的功能对于传统上是Fortran的主要领域,"他告诉Zdnet。

这对Fortran压力造成了在短时间内进化的新功能。

"另一方面,目前的市场导致现代福斯坦编纂者数量萎缩 - 这一趋势现在可以说是逆转的 - 对FORTRAN编译器开发商的预算减少,"他说。

"当你将这些与普通愿望结合起来的愿望往后兼容时,有些东西会给予。"

Fortran自2000年以来已经发生了几个主要更新,包括F2003和F2008发布,另一两个更新被称为F202x和F202Y,但它们远远超过几年。

它'一个棘手的平衡行为;匹配现代编程语言和风险破坏事物或and#39; t添加新功能 - 并冒险丢失用户以更新语言。

"我们,Fortran语言委员会可以将先进的功能推向标准的匆忙,最终没有对这些功能的实际实现,"说琴。

"或者,我们更逐步地发展了语言,这些语言运行了丢失不能等待所需功能的数十年的更大部分用户群的风险。绝对没有保证中间有一个甜蜜的地方,"他承认。

但他争论Fortran' S生存是科学界的好处。他注意到,通常可以在工作中学习Fortran的核心部分,并且需要比C ++等语言更少的复杂性。对于科学家而言,交换语言引入了对他们正在做的分析引入微妙变化的巨大风险。

在LANL,CERTIK感觉到比Fortran更新的压力。许多组织' 10,000科学家想要打开语言,这使得LONTRAN更加困难。

"有些人认为我们应该远离Fortran," CERTIK说。 "有些人看到有物理学家正在使用Fortran,所以他们会这样的。

"还有,已经使用Fortran Don' T必须欣赏这种蟒蛇或朱莉娅的方法,"他说。

"直到一切都在工作,他们不一定看到愿景。有些人说它' s一种垂死的语言,但我认为潜力是巨大的。当我与使用fortran的人交谈时,他们告诉我他们想要的一件事是编译器,可以在现代硬件上运行代码,有效 - 不仅仅是运行,而且利用它。"

"常常在Fortran,#34写入新项目; Clane说,小项目仍然变成大型项目:"有人会在你知道它之前添加新功能,并在那里有另一个大型Fortran应用程序,"他说。

"特别是许多科学应用程序,曾经诞生的小,扔掉' Fortran应用程序现在开始为小'扔掉'在Python,"他说。

" Fortran对数值计算和阵列操作具有特别良好的内置支持,这对于科学家和工程师来说尤为重要;说琴。

Clune说两个"必须有"委员会的功能正在努力包括异常处理和通用编程 - 其他语言的功能。

然而,根据如何将其他Fortran功能与其他对特定细节的一些分歧的一些重大挑战,执行处理已被删除。然后,下一个F202Y更新可能无法到达这十年的末端 - 到达时间为73岁。

"何时何时会发生F202Y,难以预测。我的希望是它不会晚于2030年,而且我将有机会在退休之前利用Fortran的通用编程。而且,是的,九年是现代软件世界的永恒,"他说。

Fortran已经有一个令人难以置信的奔跑,仍然有其崇拜者。随着几十年的Fortran代码仍然在世界各地有效地运行,它不会随时消失。但除非它可以追赶其更新的竞争对手,否则可能会努力获得许多新粉丝,或者坚持现在的竞争对手。