我正在学习使用 Ghci 调试器,遵循 debugger section GHCi 用户指南。
按照这些说明和示例,我可以设置断点并运行代码,以便调试器在它们处停止。
*Main> :break qsort │~
Breakpoint 0 activated at qsort.hs:2:12-13 │~
Breakpoint 1 activated at qsort.hs:3:16-47 │~
*Main> main │~
Stopped in Main.qsort, qsort.hs:3:16-47 │~
_result :: [Integer] = _ │~
a :: Integer = 8 │~
left :: [Integer] = _ │~
right :: [Integer] = _ │~
[qsort.hs:3:16-47] *Main>
我到达了调试器已停止程序中间执行的程度。在这种状态下,当我想从头开始重新运行程序时,我通常通过 :q
退出 ghci 并重新启动 ghci,完全重新加载程序。
如何退出正在运行的程序,以便从头开始重新运行 main 而不必退出 ghci? 最好也不需要重置断点即可完成此操作。
最佳答案
:abandon
要在 ghci 文档中查找此命令:
在 ghci 中,运行 :?
以调出 ghci 的提示中可用的命令
帮助文档,其中 :abandon
可以在调试命令
部分。
-- Commands for debugging:
:abandon at a breakpoint, abandon current computation
关于debugging - 如何退出 Ghci 调试器中正在运行的计算?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45404908/