gpt4 book ai didi

c - 为什么 Matlab 是用 C 而不是 Fortran 编写的?

转载 作者:太空狗 更新时间:2023-10-29 17:04:21 26 4
gpt4 key购买 nike

您可能知道,Fortran 是一种用于科学计算的语言。然而,最著名的科学计算高级语言的内核是用 C 而不是 Fortran 编写的。为什么?

最佳答案

回答您最初的问题:Matlab 最初是用 Fortran 编写的。但是 Matlab 的创建者 Cleve Moler 和他的合作伙伴在 1983 年做的第一件事就是重写整个 Matlab C 中的应用程序:

Jack Little left his job at the consulting company and bought a new COMPAQ portable computer at Sears. The machine had only 256 KB of memory and no hard disc; Jack had to swap 5-1/4-inch floppies to compile programs. Jack and Steve took a year and a half to re- write MATLAB in C, adding new features they had envi- sioned. (The Growth of MATLAB and The MathWorks over Two Decades)

我认为今天一个更相关的问题是:为什么他们在 1983 年就转向 C?

我的猜测是,C 可能具有某些 Fortran 所没有的特性,因此这种转换更多是出于必要,也是为了代码的可维护性。

Fortran77 中缺少的一个 killer 功能是动态内存分配(动态内存分配仅在 Fortran90 中添加)。在我看来,绕过单一的限制将是一个可怕的交易破坏者。

编辑:

dmckee 的回答很好地解释了为什么使用 Fortran77 会很痛苦。

关于c - 为什么 Matlab 是用 C 而不是 Fortran 编写的?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/925409/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com