Mathematica 的语法是类 Haskell, Scheme 的完全支持 symbolic 和 functional programming的语言。也支持从 list 出发的各类高级数据结构。也可以从 pattern matching 或者 rule apply, lambda expression 出发实现各类算法。其效率(起码从数学 evaluation 的角度看)还是很快。最近也推出了 wolfram language。那么你觉得 mathematica 能否发展成为取代或者与其他各高级语言并肩的计算机主要编程语言呢?如果是,原因何在;如果否,又是为什么?
回复内容:
不能取代,因为大家穷。
Mathematica的定位就不是通用语言,和Python没有竞争关系。
而且也不是命令式的语言,你在里面试图写If、For、Loop之类的代码都是看起来很丑的。
Mathematica的长处也不在于它的函数式语言,而是它集成的众多符号计算的算法,就像Matlab的卖点也不是那很丑的语言本身一样,人家卖的是数值算法的集成度和各种工具包。
“最近也推出了 wolfram language。"这是错的,这语言存在几十年了,只是现在才开始做广告搞宣传。
说是mathematica的优势是集成的很多算法和库……但是算法库的重要性也是毋庸置疑的。Lisp那么好,为什么不流行,很大的一个原因就是缺库。
我之所以拿Lisp出来说例子,是因为mathematica在很多方面跟Lisp很相近,从看起来的样子(括号摞括号)(虽然mathematica是三种括号花式摞),到语法特点(强动态,不区分函数和变量),到编程感受(REPL式的快速迭代式编译-运行),到用处(纯正的FP但是多范型)。
大致来说还要看wofram有没有这个想法,如果有心的话可以做成在某个领域非常有用的编程语言,如果继续死脑筋加computable data的话……管他呢,全世界多少物理学家正在买单。
mathematica 最大的特点就是他能做出来很牛的东西 比如有人用mathematica 写出了很好看很好看的书
但是 普通智商 至少像我这样的之上 花了一个国庆假期都不知道怎么写这么漂亮的书 我败了
Mathematica 的优势在于其逆天的符号处理和自带的海量 Computable Data。这两点都是这个平台的优势而不是这个语言的优势。
~~~~~~~~~~~~~~~~~~~~~~~~~~~~
曾经这里是对另一位匿名用户的回应。
上句是对评论区 out-of-context 评论的解释。
SQL 再进化100年也不能代替 VB,C, C++,C#,Java...中的任何一个, 为什么呢?
Mathematica也是一样的....一个语言不能自己实现自己的编译器(或者理论上能,实际上没人真的能做到)就说明自己根子骨里有缺陷, 不适用通用计算.....
mathematica 完全可以成为一个通用语言,现在丰富的算法库。是他的最大优势。
Statement:The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn