MATLAB爱好者论坛-LabFans.com

MATLAB爱好者论坛-LabFans.com (https://www.labfans.com/bbs/index.php)
-   资料存档 (https://www.labfans.com/bbs/forumdisplay.php?f=72)
-   -   为什么Matlab是用C而不是Fortran编写的? (https://www.labfans.com/bbs/showthread.php?t=22685)

poster 2019-12-10 16:49

为什么Matlab是用C而不是Fortran编写的?
 
如您所知,Fortran是用于科学计算的语言。但是,最著名的科学计算高级语言的内核已经用C而不是Fortran编写。为什么?


回答:
[B]回答您的原始问题:Matlab最初是用Fortran编写的。[/B]但是,Matlab的创建者Cleve Moler和他的合伙人在1983年所做的第一件事就是用C重写整个Matlab应用程序:
[INDENT]杰克·利特尔(Jack Little)辞去了咨询公司的工作,并在西尔斯(Sears)购买了一台新的COMPAQ便携式计算机。机器只有256 KB的内存,没有硬盘。杰克必须交换5-1 / 4英寸软盘才能编译程序。杰克和史蒂夫花了一年半的时间用C语言重写MATLAB,并添加了他们所设想的新功能。 ( [URL="http://www.mathworks.com/company/newsletters/news_notes/clevescorner/jan06.pdf"]两个十年来MATLAB和MathWorks的发展[/URL] )

[/INDENT][B]我认为今天要问的一个更相关的问题是:为什么他们在1983年改用C?[/B]

我的猜测是C可能具有Fortran所不具备的某些功能,因此出于必要性以及出于代码可维护性的考虑,此切换更多。

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

编辑:

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



[url=https://stackoverflow.com/questions/925409]更多&回答...[/url]


所有时间均为北京时间。现在的时间是 22:43

Powered by vBulletin
版权所有 ©2000 - 2025,Jelsoft Enterprises Ltd.