$ ghci
GHCi, version 8.10.7: https://www.haskell.org/ghc/ :? for help
Loaded package environment from /home/tommd/.ghc/x86_64-linux-8.10.7/environments/default
iPrelude> import Debug.Trace
Prelude Debug.Trace> :{
Prelude Debug.Trace| do
Prelude Debug.Trace| c <- [1..4]
Prelude Debug.Trace| trace ("C is currently: " ++ show c) (return c)
Prelude Debug.Trace| :}
C is currently: 1
[1C is currently: 2
,2C is currently: 3
,3C is currently: 4
,4]
1条答案
按热度按时间v8wbuo2f1#
既然可以请翻译,为什么还要问我们?
请注意,输出与跟踪消息交错,因此您可以看到
c
在monad列表中每次取一个1
到4
的值。如果最后一部分“单子中”不是很明显,那么不要忽略它--这是理解这个答案的关键部分,也是如何将它应用到你使用Haskell语言中的关键部分。