[问题] Mathematica计算效率 函数式语言

楼主: Absolitude (别再睡了起床了爱丽)   2016-11-30 15:00:01
最早是因为我需要用的一个小软件是用Mathematica写的所以使用Mathematica作计算,
但是之前的工作基本上大部分都可以用现成的范例档做简单的修改完成,我也就一直没
有花时间去了解Mathematica本身,最近遇到一些问题所以去找资料来看,找到一本
Mathematica cookbook ( http://shop.oreilly.com/product/9780596521004.do )才知
道原来Mathematica是用一种叫函数式的语法写的,我几乎完全没有程式理论的基础,第
一次知道原来程式语言还有不同类型,虽然这本书里有范例说明在Mathematica里使用函
数式的风格来写可以提升效率减少计算时间,不过在网络上找资料有提到函数式语法本身
运算就会比一般的算法还要慢,想请问如果是想做大量数值运算我应该继续使用
Mathematica还是说用其他的语言会比较好? 有板友研究过这个问题吗?
感恩~
作者: LPH66 (-6.2598534e+18f)   2016-11-30 18:39:00
函数式语法本身跟计算快慢并没有直接关连, 要看实作MMA 我不太清楚实作如何, 但应该没有很糟才是使用函数式风格写程式加速的一个简单实例可看本板#1KbStm3l那里也有提到如果真的数值计算太多的话还有 Compile 这大绝它会把函数式的 MMA 程式编译成类似程序式的机械码程式那种不可变的值是纯函数语言如 Haskell 等才会这样MMA 有变量, 也有一些类似程序式的循环结构 (For, Do 等)所以 MMA 其实不怎么纯函数, 但相对也没那些负担
楼主: Absolitude (别再睡了起床了爱丽)   2016-12-01 05:13:00
原来如此! 那就没问题了! 谢谢!

Links booklink

Contact Us: admin [ a t ] ucptt.com