Haskell:
打印调试输出

How to: (怎么做:)

在Haskell中,我们常用print函数输出调试信息。它能自动处理换行,使得输出清晰易读。这里有个示例:

main :: IO ()
main = do
    let numberList = [1..5]
    print numberList
    putStrLn $ "The sum is: " ++ show (sum numberList)

输出会是这样的:

[1,2,3,4,5]
The sum is: 15

Deep Dive (深入探讨)

以前,print语句是调试时的好帮手。现在Haskell使用print函数,因为它是一个IO操作。如果想用类似的方式,也可以使用Debug.Trace库的trace函数。不同的是,它不是IO操作,可以在任意表达式中使用,但不建议在最终程序中使用。

import Debug.Trace

main = trace "This will be printed." $ print (sum [1..5])

trace将会输出字符串,并返回其第二个参数的值。

在Haskell中,记得区分纯函数和IO函数,因为它们对调试的影响不同。

See Also (另请参阅)