# M 语言计算环境
本文对 M 语言计算环境做了基本介绍。
# 概述
TyMLang(即 M 语言计算环境)是同元软控新推出的一款实用工具,无需安装 MATLAB,原生支持 MATLAB 代码文件的解释与运行,并支持历史代码资产的高效复用。它运行在 Syslab 上,支持 M 语言与 Julia 语言互调用,可无缝衔接 MATLAB 生态与 Syslab 科学计算生态。
TyMLang 的主要优势在于:
语言级兼容 MATLAB:系统性的原生支持 MATLAB/M 语言的核心语法、程序行为和机制;
内置常用函数:内置提供基础、数学、图形、控制系统、信号处理、通信等领域常用函数;
M 与 Julia 语言互调用:原生访问 Julia 生态,能够调用 Julia 的诸多科学计算库;
快速复用存量 M 代码:无需安装 MATLAB,无需修改源码,即可实现存量 M 代码的兼容运行。
TyMLang 已具备一定程度的兼容性,但与拥有四十年以上积累的 MATLAB 相比,仍然面临诸多挑战:
部分语言特性的差异:MATLAB 为并行计算引入了 parfor、spmd 等内置语法,也为面向对象引入了相应的语法,而 TyMLang 尚不支持。
边缘语法的差距:虽然 MATLAB 的语法相对简单,但在边缘情况却有大量细节需要注意。在这样的情况下,我们只能通过不断地测试和修复,来逐步完善 TyMLang 的语法兼容性,这是一个长期的过程。
内置函数的差距:MATLAB 内置了许多工具箱,这些工具箱包含了大量函数。函数的缺失,导致用户在使用 TyMLang 时可能需要自行实现这些函数,或者调用同元开发的 Julia 函数库,这都会带来额外的工作量。
执行性能的差距:MATLAB 在 JIT 编译上的长期投入,使得 MATLAB 在循环、标量运算和修改数组等方面具有较高的性能。