【发布时间】:2015-06-13 09:16:58
【问题描述】:
好像Haskell的IO比较慢。
例如,比较 Haskell 和 Python
#io.py
import sys
s=sys.stdin.read()
sys.stdout.write(s)
,
-- io.hs
main = do
s <- getContents
putStr s
他们的表现(gen.py 将 512k 数据写入标准输出):
Python 版本:
$ time python gen.py | python io.py > /dev/null
real 0m0.203s
user 0m0.015s
sys 0m0.000s
Haskell 版本:
$ time python gen.py | runhaskell io.hs > /dev/null
real 0m0.562s
user 0m0.015s
sys 0m0.000s
Haskell 似乎要低得多。我的测试有问题吗?还是只是 Haskell 的固有问题?
谢谢。
【问题讨论】:
-
这两个时间都包括编译程序所花费的时间尝试计时
gen.pyc(预编译)与来自io.hs的预编译二进制文件。