首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >什么才是性能更好的呢?Haskell或OCaml

什么才是性能更好的呢?Haskell或OCaml
EN

Stack Overflow用户
提问于 2010-11-30 05:10:12
回答 2查看 26.8K关注 0票数 57

我在过去的18个月里掌握了函数式编程,从学习OCaml开始,到现在已经有几个星期了。现在我想走下一步,实现一些实际的应用程序:一个简单的实时地形编辑器。我写过许多实时地形渲染引擎,所以这是一个熟悉的话题。所使用的递归算法和数据结构似乎非常适合函数实现。

由于这是一个实时应用程序,我自然会寻找我能获得的最佳性能。现在,一些(我觉得挺烦人的) OCaml的支持者经常抱怨Haskell比OCaml或F#慢。但根据The Computer Language Benchmarks Game哈斯克尔经常击败OCaml,如果只是相当小的分数-仍然存在问题,这个基准测试只采用非常具体的样本。

正确的做法当然是用两种语言实现程序,然后进行比较,但我就是不想做重复的工作。

但也许其他人在OCaml和Haskell中做了类似的应用程序,并给出了一些数字?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2010-11-30 12:38:28

所有人都说,OCaml和Haskell都有足够高性能的编译器和运行时来处理几乎所有的事情。在我看来,基于纯粹的性能在它们之间进行选择似乎很愚蠢。您已经走了这么远--摆脱了显然最低级和性能最好的语言(C、C++等)。以更清晰、更简洁、更有表现力、更高级的代码为名。那么,当涉及到的性能差异要小得多时,为什么现在切换到该标准?

我会采用一些更宽泛的标准--如果您想要普遍的并行性,那么Haskell是更好的选择。如果你想要真正的无处不在的突变,那么OCaml更好。

如果你充其量只想要非常粗略的并行性,并且你打算主要使用函数式结构,那么可以根据其他的东西来选择,比如语法(我认为Haskell在这里要好得多,但这是主观的)或可用的库(Haskell在数量/可用性上胜出,但OCaml可能仍然在图形部门胜过它)。

我不认为你会出错

票数 62
EN

Stack Overflow用户

发布于 2010-11-30 05:15:39

根据我看到的所有数据,它们大致具有可比性。你写的代码会比语言本身产生更大的不同。

票数 19
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/4308137

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档