在OCaml中跟踪和调试

时间:2011-11-10 10:50:28

标签: debugging ocaml tracing

你在OCaml中用什么跟踪和调试?

为了调试我尝试了ocamldebug和Emacs插件。

对于跟踪我希望能够打印每个变量的数据构造函数。 使用Camlp4的示例如下所示:http://caml.inria.fr/pub/docs/tutorial-camlp4/tutorial007.html#toc52

   type colour = Red | Green | Blue
   let print_colour =
     function
       Red -> print_string "Red"
     | Green -> print_string "Green"
     | Blue -> print_string "Blue"

1 个答案:

答案 0 :(得分:9)

ocamldebug可以在使用字节码时正常工作。

如果要调试本机代码应用程序,Mantis上有patch by Thomas gazagnaire允许使用gdb在OCaml程序中逐行执行。该补丁的部分内容应集成在下一版本的OCaml(3.13或4.00)中。

然而,目前没有办法打印OCaml值,但是另一个补丁即将到来,使用GADT为任何类型定义通用打印机功能。