From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Delivered-To: caml-list@yquem.inria.fr Received: from nez-perce.inria.fr (nez-perce.inria.fr [192.93.2.78]) by yquem.inria.fr (Postfix) with ESMTP id 0067EBBFA for ; Mon, 20 Jun 2005 22:07:29 +0200 (CEST) Received: from salt.cs.brown.edu (salt.cs.brown.edu [128.148.32.122]) by nez-perce.inria.fr (8.13.0/8.13.0) with ESMTP id j5KK7TPP000585 for ; Mon, 20 Jun 2005 22:07:29 +0200 Received: from localhost (localhost [127.0.0.1]) by salt.cs.brown.edu (Postfix) with ESMTP id D83CA3864A1 for ; Mon, 20 Jun 2005 16:07:28 -0400 (EDT) Received: from salt.cs.brown.edu ([127.0.0.1]) by localhost (salt [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id 31478-06 for ; Mon, 20 Jun 2005 16:07:28 -0400 (EDT) Received: from null.cs.brown.edu (null.cs.brown.edu [128.148.38.190]) by salt.cs.brown.edu (Postfix) with ESMTP id C32A738646E for ; Mon, 20 Jun 2005 16:07:28 -0400 (EDT) Received: from point.cs.brown.edu (point [128.148.33.31]) by null.cs.brown.edu (Postfix) with ESMTP id B2CEB148010 for ; Mon, 20 Jun 2005 16:07:28 -0400 (EDT) Received: by point.cs.brown.edu (Postfix, from userid 30102) id ADFD57DE4; Mon, 20 Jun 2005 16:07:28 -0400 (EDT) Received: from localhost (localhost [127.0.0.1]) by point.cs.brown.edu (Postfix) with ESMTP id ACE6F454A4 for ; Mon, 20 Jun 2005 16:07:28 -0400 (EDT) Date: Mon, 20 Jun 2005 16:07:28 -0400 (EDT) From: "Nathaniel J. Gaylinn" X-X-Sender: ngaylinn@point To: caml-list@yquem.inria.fr Subject: OCaml IDE (working with the OCaml debugger) Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII X-Virus-Scanned: by amavisd-new-20030616-p10 (Debian) at cs.brown.edu X-Miltered: at nez-perce with ID 42B72201.001 by Joe's j-chkmail (http://j-chkmail.ensmp.fr)! X-Spam: no; 0.00; ocaml:01 ocaml:01 debugger:01 debugger:01 stepping:01 ocamldebug:01 recursive:01 invocation:01 defines:01 recursive:01 ocamldebug:01 module:03 pattern:03 gui:04 interface:05 X-Spam-Checker-Version: SpamAssassin 3.0.2 (2004-11-16) on yquem.inria.fr X-Spam-Status: No, score=0.0 required=5.0 tests=none autolearn=disabled version=3.0.2 X-Spam-Level: Although I've spent a good amount of time working with OCaml, I've never really made much use of the debugger. However, I feel that having a nice interface for the ocaml debugger is an important feature for my program to have! Still, there are two small issues of just using the debugger that I'm having some problems with, and until I have a better handle on them I can't do much to develop a GUI for the debugger. To start with, I found the stepping pattern of ocamldebug to be rather unintuitive. After playing with it for an afternoon, I feel I have a pretty good handle on how OCaml steps through code, but I can't personally put it into words. Is there a simple way to describe how OCaml steps through source code? How come in a recursive function invocation that goes from n = 0 to n = m does the debugger seem to only stop when n = 1 to m and not when n = 0? If this isn't clear, I can post an example. Secondly, I often find with simple programs that OCaml doesn't list any events in the module my source code defines, even though the source code contains recursive function definitons and calls! What is the minimum required for ocamldebug to see events in a simple program? Thanks, -- Nate Gaylinn