答案 0 :(得分:7)
Visual Studio 2010为F#提供了出色的调试体验,包括断点,跟踪点,调用堆栈,本地,步进,设置下一个语句,线程窗口,将新值戳入变量,调试器可视化器,条件断点,即时窗口等。唯一需要注意的是,最后两个使用C#表达式求值程序(F#没有自己的调试器EE),这意味着你必须键入eg C#语法进入'即时窗口'。
(如果您下载免费的VS2010集成外壳和F#CTP,我上面提到的所有内容都是免费的。)
我不确定Mono现在有什么可用的,但是如果已经有了不错的东西就不会感到惊讶,而且在不太遥远的未来会有更好的东西。
答案 1 :(得分:6)
Mono有own debugger。调试格式的情况有点令人困惑,因为Visual Studio将生成调试器所需的pdb文件。 Mono使用备用mdb格式。 fsc.exe(f#编译器)将为其运行的任何平台生成适当的。
Monodevelop IDE可以用于.net程序集的一般调试,即使它还不支持已发布的f#版本。您需要在项目中引用项目生成的程序集。
请注意,如果您在命令行上执行“--debug”,并且想要在堆栈跟踪中使用文件名和行号,则还必须将“--debug”传递给mono。
答案 2 :(得分:2)
任何.NET调试器都应该使用F#代码。 Visual Studio调试体验与任何其他语言基本相同(例如,您可以在编辑器中设置断点等)。我无法谈论人们在Mono上使用的工具。
答案 3 :(得分:0)
LinqPad了解F#代码,但我没试过。付费版本可让您进行调试。