Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/haskell/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Debugging 逐行逐行遍历函数_Debugging_Haskell_Ghci - Fatal编程技术网

Debugging 逐行逐行遍历函数

Debugging 逐行逐行遍历函数,debugging,haskell,ghci,Debugging,Haskell,Ghci,本用户指南: 广告: 执行可以是单步执行:计算器将暂停执行 大约在每次缩减之后,允许使用局部变量 检查。这相当于在每个点上设置断点 在节目中 然而,我在文件中找不到任何东西告诉我如何做到这一点。在标题下: 2.5.2。单步 它描述了如何从一个断点跳到另一个断点。但我不想在每一行上都设置断点。广告是虚假的还是有办法逐行浏览节目 谢谢。设置并到达断点后,您可以从调试器调用:步骤 还有其他单一步骤的可能性。在断点处键入:help一次将告诉您更多有关您可以执行的操作的信息。好的,我知道了: ghci&

本用户指南:

广告:

执行可以是单步执行:计算器将暂停执行 大约在每次缩减之后,允许使用局部变量 检查。这相当于在每个点上设置断点 在节目中

然而,我在文件中找不到任何东西告诉我如何做到这一点。在标题下:

2.5.2。单步

它描述了如何从一个断点跳到另一个断点。但我不想在每一行上都设置断点。广告是虚假的还是有办法逐行浏览节目


谢谢。

设置并到达断点后,您可以从调试器调用
:步骤


还有其他单一步骤的可能性。在断点处键入
:help
一次将告诉您更多有关您可以执行的操作的信息。

好的,我知道了:

ghci> :step function_name arg1 arg2
...
...
ghci> :step   
...
...
ghci> :step
如果忘记了函数参数,则会得到一条神秘的错误消息:

<interactive>:138:1:
    No instance for (Show (String -> Double))
      arising from a use of `print'
    Possible fix:
      add an instance declaration for (Show (String -> Double))
    In a stmt of an interactive GHCi command: print it

好吧,这是一个变通办法,但这不是广告上宣传的。感谢您的关注。不过,该错误消息实际上与单步执行无关。如果在主提示符上向函数传递的参数太少,则会出现相同的错误。它告诉您它无法打印结果部分应用的函数。(添加实例的建议是假的)。“它告诉你它无法打印结果中部分应用的函数。”是的,我知道了——但这花了我一段时间。出于某种原因,我总是想键入:step my_func并省略args。我在我的帖子中添加了这个错误信息,以防其他人这样做。这是一个术语问题。使用
:步骤
时,调试器会“大约在每次缩减之后”创建一个断点。您不必在每一行上都设置断点。
ghci> :continue