runghc 和 ghc 之间有什么区别?
我运行了一个简短的程序,似乎可以用两者编译好,除了我用 runghc 得到以下内容,但不是普通 ghc :
错误:
- 不在范围内的变量:main :: IO a0
- 也许你的意思是'min' (从前奏中导入)
It seems编译 runghc 中的内容,这些内容需要Main函数,而纯 ghc ,不是吗?
这就是全部吗?
答案 0 :(得分:1)
runghc
用于直接运行程序,而不进行编译。没有main
IO操作的文件不能运行,因为根据定义,没有任何运行。
ghc
对不包含main
的文件执行的操作将其编译为 module ,由其他haskell程序/模块导入-当然,这些是,无法运行。