caml-list - the Caml user's mailing list
 help / color / mirror / Atom feed
From: Nils Becker <nils.becker@bioquant.uni-heidelberg.de>
To: caml-list@inria.fr
Subject: Re: [Caml-list] Do you use a debugger with OCaml? If not, why not?
Date: Wed, 25 Nov 2015 15:05:28 +0100	[thread overview]
Message-ID: <n34f6t$5ia$1@ger.gmane.org> (raw)
In-Reply-To: <5655AE66.6000307@coherentgraphics.co.uk>

hi,

> The use of a debugger usually indicates that a programmer lost a
> control of its own program and has no idea whats going on.

this is one reason, but it is also completely valid to debug algorithms
i.e. find bugs in the logic of an algorithm, not the implementation.
these are not caught by the type system. in simulation code for example,
mutable state is often the most natural representation, and it is
sometimes necessary to follow a mutable value through the algorithm to
verify.

> debugging process differ when writing OCaml compared with other
> languages you use? 

when comparing with python, i often use the python debugger as integral
part of checking the correctness of the algorithm, and i have full
access to all values, and even evaluation of code, which makes that
easy. i feel in control. that said, often i need to use it to find nasty
bugs due to type-unsafety.

in ocamldebug, i find it great that i can back-step. however, the need
to work so much to install printers for my types is a severe drawback;
what's worse is that it seems to be even impossible to install printers
for types defined inside functor bodies. so, i sometimes hit a brick
wall with ocamldebug, which is frustrating, and i feel like i'm fighting
the system rather than using a productive tool.

for me, some way to auto-print some crude representation of _all_ types
in the debugger would help a lot.

n.



  parent reply	other threads:[~2015-11-25 14:05 UTC|newest]

Thread overview: 21+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-11-25 12:49 John Whitington
2015-11-25 13:12 ` Francois Berenger
2015-11-25 13:23 ` Ivan Gotovchits
2015-11-25 15:27   ` Gerd Stolpmann
2015-11-25 16:04     ` Chan Ngo
2015-11-25 13:26 ` Matthieu Dubuget
2015-12-01 12:06   ` Matthieu Dubuget
2015-11-25 14:02 ` Markus Weißmann
2015-11-25 14:05 ` Nils Becker [this message]
2015-11-25 15:55 ` Daniel Bünzli
2015-11-26  9:14   ` Leonardo Laguna Ruiz
2015-11-26 10:59     ` Tom Ridge
2015-11-30 17:56       ` Xavier Van de Woestyne
2015-11-25 16:06 ` Maverick Woo
2015-11-25 16:16 ` Anton Bachin
2015-11-25 16:52   ` Michael Grünewald
2015-11-25 18:23     ` Török Edwin
2015-11-25 20:23 ` David MENTRÉ
2015-11-26 10:11 ` Malcolm Matalka
2015-11-26 10:57 ` Romain Bardou
2015-12-11 18:58 ` Richard W.M. Jones

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to='n34f6t$5ia$1@ger.gmane.org' \
    --to=nils.becker@bioquant.uni-heidelberg.de \
    --cc=caml-list@inria.fr \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).