安静地退出(无一例外)haskell

时间:2015-04-20 19:41:51

标签: haskell exception exit

我知道

exitWith ExitSuccess

退出程序,但输出

*** Exception: ExitSuccess

我想知道是否有办法退出而不在屏幕上输出任何内容?

1 个答案:

答案 0 :(得分:8)

在此扩展上述评论(致Reid,Bakuriu和Jeffrey)。您很可能正在ghci执行以下程序:

import System.Exit

main :: IO ()
main = exitWith ExitSuccess

现在在终端:

$ ghci
λ> :load crash.hs -- crash.hs is the filename
λ> main
*** Exception: ExitSuccess

请注意,ghcighc不同。 ghci用作Haskell的REPL。编译和执行上述代码时,如下所示不会产生任何消息:

$ ghc -o crash crash.hs 
$ ./crash

请注意,REPL是通过名为ghci的程序调用的。要编译和生成可执行文件,必须使用名为ghc的可执行文件。