comp.lang.ada
 help / color / mirror / Atom feed
From: Robert Dewar <robert_dewar@my-deja.com>
Subject: Re: Ok sorry, it is just a book gives no feedback.
Date: Sun, 07 Jan 2001 04:19:38 GMT
Date: 2001-01-07T04:19:38+00:00	[thread overview]
Message-ID: <938qom$ptd$1@nnrp1.deja.com> (raw)
In-Reply-To: z4W1k714y7z3@eisner.decus.org

In article <z4W1k714y7z3@eisner.decus.org>,
  Kilgallen@eisner.decus.org.nospam (Larry Kilgallen) wrote:
> Are there many such debuggers still in use for major
> operating systems ?  I remember something called ODT (Octal
> Debugging Tool) for the PDP-8, but I think a lot of people do
> not even remember the PDP-8.

You miss my point, I am not talking about symbolic debugging,
but cases where elaborate logic is required for detecting and
logging an error situation. I know of no debuggers where it is
easy to program complex functions that operate comfortably
within the target environment.

For example, suppose you have logic which expects that a
certain number should always satisfy certain constraints,
due to logic in the program. You suspect that at some point,
you have a value that does not meet these constraints.
Basically what you want to add is a check to see if these
conditions are met (arbitrarily complex code), and if they
are not met, dump out various complex information at a high
level of abstraction. This is not a task that is within reach
of typical debuggers!

I find that people who "detest" certain styles of working and
working environments sometimes lack the flexibility to deal
with difficult situations. It sounds for instance like you
would be really stuck if you were in a hiesenbug situation
where the bug does not appear if you operate in the presence
of the debugger. This can most certainly happen with some kinds
of erroneous programs, or where timing problems are an issue.

Indeed in real time programs, the paradigm of breakpoint and
examine often breaks down badly. Yes, there are some
asyncrhonous debugging tools around (like OCS Aprobe) which
can be very valuable in such situations, but sometimes, a
judiciously placed put_line can be the most efficient and
effective debugging approach. If you are sure you "detest"
such an approach, you may end up proceeding in less than
an optimal manner. Flexibility is always a plus.

Note that when using GDB, there is a very useful hybrid
approach that is often very attractive, which is to write
debugging routines that output information in a suitable
high level abstract form (see for example the pn routine
in GNAT for printing an AST node). Then the routine is
called from the debugger. For example, when we are debugging
the GNAT compiler itself, we write as a gdb command:

  pn (125)

and this prints the contents of node 125 in a high level
symbolic form.

But this capability requires that the debugging routines be
able to do output, so you run into the same Pure/Preelaborable
situations.

Larry, I take it you are still stuck in an Ada 83 environment,
where this particular issue does not arise? (I say that because
it is quite a familiar problem to Ada 95 programmers :-)

Robert


Sent via Deja.com
http://www.deja.com/



  reply	other threads:[~2001-01-07  4:19 UTC|newest]

Thread overview: 40+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2000-12-31 14:18 Ok sorry, it is just a book gives no feedback Mark Pagdin
2000-12-31 16:56 ` Robert Dewar
2000-12-31 16:57 ` Robert Dewar
2001-01-01 11:03 ` Tarjei T. Jensen
2001-01-02  9:23 ` Newsgroup cla (was: Ok sorry, it is just a book gives no feedback.) Anders Wirzenius
2001-01-02 10:44   ` Florian Weimer
2001-01-02 13:21     ` Larry Kilgallen
2001-01-02 12:45   ` Andrew Hately
2001-01-02 13:25     ` Florian Weimer
2001-01-02 22:26 ` Ok sorry, it is just a book gives no feedback John English
2001-01-03  6:24 ` Nick Roberts
2001-01-04 13:14   ` Robert Dewar
2001-01-04 15:49     ` n_brunot
2001-01-04 17:09       ` Robert Dewar
2001-01-05  8:53         ` n_brunot
2001-01-05 13:45           ` Robert Dewar
2001-01-05 21:23             ` Randy Brukardt
2001-01-06  4:05               ` Larry Kilgallen
2001-01-06 17:11                 ` Robert Dewar
2001-01-06 20:26                   ` Larry Kilgallen
2001-01-06 22:40                     ` Robert Dewar
2001-01-07  1:12                       ` Larry Kilgallen
2001-01-07  4:19                         ` Robert Dewar [this message]
2001-01-07 17:12                           ` Larry Kilgallen
2001-01-08 12:26                             ` Marin David Condic
2001-01-08 12:57                             ` Larry Kilgallen
2001-01-08 15:01                     ` Stephen Leake
2001-01-08 15:58                       ` Ted Dennison
2001-01-09 21:13                       ` Jean-Pierre Rosen
2001-01-06 19:46               ` Laurent Guerby
2001-01-06 20:36                 ` Robert Dewar
2001-01-07 13:09                   ` Laurent Guerby
2001-01-07 15:56                     ` Robert Dewar
2001-01-07 16:25                       ` Laurent Guerby
2001-01-07 15:58                     ` Robert Dewar
2001-01-07 17:19                     ` Larry Kilgallen
2001-01-06  7:13           ` Simon Wright
2001-01-07 16:00             ` Robert Dewar
2001-01-07 17:16             ` Larry Kilgallen
2001-01-04 17:11       ` Robert Dewar
replies disabled

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox