Mathematica 9 is now available

1.12.4 Mathematica 软件引擎

Mathematica 是曾经建立的很复杂的软件系统之一.它的源代码用 C 语言 和 Mathematica 的组合写成.对第4版,关于内核的代码由大约由 650,000 行 C 代码和 130,000 行 Mathematica 语句组成. 这个粗略地相应于18 兆字节的 数据或 18,000 页打印的文字.
Mathematica 中的 C 代码实际上是用支持一定的内存管理和面向对象 特征的扩展 C 语言写成的. Mathematica 代码使用 ShareDumpSave 进 行了优化.
Mathematica 内核中不同部分的代码的分解大致如下:语言和交流占 30%; 数值计算占 25%;代数计算占 25%;图形与内核输出占 20%.
大多数代码是相当密集的和系统化的:实际上是简单过程或表的那些部分 使用最少的代码,这是因为代码趋向于较高的层次--常常直接在 Mathematica 中被写出.
内核中的源代码对于 Mathematica 在其上运行的所有计算机系统是完全 相同的.然而对于前端,需要大量专门化的代码来支持不同类型的用户界面环境. 前端包含大约 600,000 行独立于系统的C源代码,其中大约 150,000 行涉及表达式的格式构造.有 50,000 到 100,000 行的为每个用户界面 环境定制的特殊代码.
Mathematica 使用客户--服务器计算模式. 前端和内核通过 MathLink 来连接,与外部程序通信的系统同样是 MathLink.
Mathematica 内核的C代码部分,模数和一致性通过交换完整的 Mathematica 表达式使不同部分进行通信来获得. 但是应当注意,即使系统的不同部分在源代码层次是相当独立的, 它也有许多算法的相互依赖性. 例如,使代数算法得到广泛使用的数值函数, 或者使用嵌入在不同数学函数中的相当高深的数学算法的 图形代码都是常见到的.
自从 1986 年 Mathematica 发展开始以来,直接花费在创建 Mathematica 源代码的努力是一千人ꆪꆪ年的重要部分.此外,可比较的或更大的努力已被 花费在检验和证明上.
自从第1版发行以来 Mathematica 的源代码已经有了很大改变. 在内核中的代码总行数从第 1 版的 150,000 行到第 2 版的 350,000 行,又到第 3 版的 2,600,000 行,第 4 版接近 800,000 行. 此外,在每个阶段存在已修改的代码 --以致第4版仅有很少一部分代码与第1版中的代码是相同的. 然而尽管在内部 代码中有这些变化,Mathematica 用户层次的设计一直是保持与第 1 版兼容的. 更多的功能被添加,但第 1 版中创建的程序将几乎总是不改变的运行在第 4 版中.



Any questions about topics on this page? Click here to get an individual response.Buy NowMore Information
THIS IS DOCUMENTATION FOR AN OBSOLETE PRODUCT.
SEE THE DOCUMENTATION CENTER FOR THE LATEST INFORMATION.