在Mathematica中,ShowIt
function通常用于调试。
基本上,ShowIt
是一个标识函数,它将其参数的值输出到控制台。我想知道,如何为Haskell编写相同的函数。 Haskell的问题在于,由于函数执行IO,因此它不能具有与输入类型相同的返回类型。我认为我们必须使用不安全IO 来实施showIt
。但我不知道怎么做。
答案 0 :(得分:11)
这已存在于Debug.Trace
包中。它被称为traceShowId
。 (并且它确实使用了unsafePerformIO
- 您可以看到the implementation of trace
here。)