将OCaml转换为F#:是否有像Visual Studio一样的GUI调试的OCaml IDE

时间:2012-09-15 13:32:25

标签: debugging f# ocaml

我正在将几个模块从OCaml转换为F#。为了捕获错误并验证一些更好的差异,我同时针对相同的测试用例运行两个版本。

对于F#我正在使用Visual Studio调试器而对于OCaml我正在使用ocamldebug。由于Visual Studio是一个GUI而ocamldebug是一个命令行,因此进行比较需要比前后视觉扫描更多的关注。

我想知道是否有任何OCaml IDE支持带有步进的GUI调试器,同时显示突出显示的源行和单独的窗口以显示值。

修改

我做了更多的照顾,杰克发布了一个答案,然后想起为什么几个月前我没有选择一个,当我这样做。

我传递的东西和OCaml命令行工具的原因是

  1. 命令行工具随编译器一起提供,因此它们是最新的和有效的。有一些关于这些工具的文档,但老实说,我确实需要花几个小时编写自己的ocamldebug手册,并附上一些示例,以便熟练掌握ocamldebug。

  2. 他们依赖EMACS。它不是EMACS而是我;我只是讨厌它的工作方式。使用EMACS的所有工具我发现它们只是ocamldebug的包装器。所以没有任何好处,但更多的命令记忆。注意:EMACS正在积极维护和更新。

  3. 他们依赖Eclipse。我曾经使用过Eclipse来处理ANTLR,但是我每隔几年才制作一个系统并且有很好的笔记,所以值得我花时间。一旦我让Eclipse为一个主要的ANTLR版本工作,我多年不会再次更新它。在我计划调试OCaml的少量时间内,成本太高。注意:Eclipse会被主动维护和更新。

  4. 他们不做调试。由于OCaml的GUI工具很少,即使是增强的编辑器也会对某些人有所帮助。此时不适合我。

  5. 多年来一直没有维护工具/插件。

  6. 这不是OCaml的贬低,只是我发现它们的细节。我对OCaml没有任何问题,我只是希望我的工作效率更高。

3 个答案:

答案 0 :(得分:4)

我认为大多数人只是在emacs中使用OCaml调试器(ocamldebug)(有关详细信息,请参阅该页面的底部)。

我不知道它是否支持调试(但是),但TypeRex OCaml Programming Studio看起来像一个有趣的项目。

最后,您可以尝试一些旧的,未维护的Eclipse插件(例如,Camelia),尽管我怀疑它们已经有点腐烂太久而无法在此时使用。

答案 1 :(得分:3)

我无法找到与使用符合我要求的F#的Visual Studio具有相同功能的OCaml GUI调试器。

如果有人找到一个或创建一个并将其作为答案发布,我很乐意让他们接受投票。

答案 2 :(得分:2)

  

我想知道是否有任何OCaml IDE支持带有步进的GUI调试器,同时显示突出显示的源行和单独的窗口以显示值。

我只是在经过4年的休整后才回到OCaml和Linux,但是,最后我看,Linux的GUI库很差,而且OCaml的互操作性非常差,所以没有人能够编写非平凡的GUI应用程序在OCaml。