![]() |
为什么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.