0

是否有从 fortran 90 到 fortran 77 的转换器?

我有一个仅 fortran77 的编译器,想在上面运行 NAS Parallel Benchmark(简称 NPB)。但是 NPB 使用了 F90 的一些特性,比如 do enddo,smth else。所有功能都相当简单。

有没有办法将 NPB 翻译成 F77 严格的语言?

标签:fortran 并行转换 编程语言

我需要工具来降低最低限度

 DO ... ENDDO

 DO ... WHILE

to DO带有数字标签和 to DO+IF

4

2 回答 2

3

有从 FORTRAN 77 到 Fortran 90 的转换器,但我从未听说过另一个方向的转换器。我希望这样的需求很少。DO ... END DO 和 DO ... WHILE 是 FORTRAN 77 编译器支持的常见扩展,因此源代码中的这些功能可能不是使用受限 Fortran 90 的标志,而是使用典型但非严格的 FORTRAN 77 的标志。为什么坚持使用 FORTRAN 77 编译器?为什么不下载 gfortran 或其他现代编译器?

于 2010-04-28T06:42:52.387 回答
1

DMS Software Reengineering Toolkit用于对多种语言的大型应用程序进行程序转换。

它有一个完整的 Fortran 95前端,并且可以对代码应用源到源的重写。由于 F77 几乎是 F95 的一个子集,因此您可以通过应用将 F95 构造映射到仍在 F95 中的相应 F77 惯用语的重写来实现转换。您将结构化 DO 块转换为带有 goto 和行号的 F77 代码的示例非常简单。可能还有很多其他更改(F95 具有字符串、结构、模块等),但是您必须转换哪些更改取决于感兴趣的源代码库中的确切内容。

于 2010-05-04T20:58:58.390 回答