0

我有一系列与 Leksah 中的调试有关的问题,这似乎不起作用,或者可能只有我没有正确使用它。我不知道。

我在截屏视频中提出问题,因为这样呈现问题比写作+图片更清晰:https ://www.youtube.com/watch?v=KeB8j_Viwrg

主要问题:这是 Leksah 的错误行为还是只有我没有正确使用它?如果是后者,我应该如何正确使用调试功能?

4

1 回答 1

1

非常感谢制作此视频,它使您更容易了解正在发生的事情!

我认为问题在于 Haskell 真的很懒惰。当您n在调试会话开始时进行评估时(在视频开始之前,但您可以在视频开始的日志窗格中看到它)n被替换为结果(在本例中为 17)。当你要求它进入它时,没有任何东西可以进入它,就像你刚刚n=17在代码中一样。

尝试重新启动调试会话或按 Ctrl+B 强制:reload执行代码。在你这样做之后,这n应该是一个未评估的 thunk,你应该能够单步执行它或在它使用的代码中设置断点。

于 2015-06-08T05:54:06.107 回答