From: "André Pönitz" <apoenitz@trolltech.com>
To: "André Pönitz" <apoenitz@trolltech.com>
Cc: gdb-patches@sources.redhat.com
Subject: Re: [PATCH:MI] Return a subset of a variable object's children
Date: Wed, 30 Apr 2008 13:16:00 -0000 [thread overview]
Message-ID: <200804301249.08039.apoenitz@trolltech.com> (raw)
In-Reply-To: <200804301244.55116.apoenitz@trolltech.com>
[Sorry Nick for the private reply... I am still fighting the Mail client ;-}]
On Wednesday 30 April 2008 11:25:05 you wrote:
> > > > I was thinking that only a small number of children would ever exist
> > > > simultaneously. Scrolling might make that a larger number but maybe
> > > > it could be arranged to delete children that go out of view.
> > >
> > > I wonder if deleting children that are not visible is possible/desirable.
> >
> > Well, I would still prefer a simple toggle that would allow me to switch off
> > any automatic creation of children and one-shot 'expression evaluation'
> > > > and one-shot 'children listing'.
>
> Are you arguing against the general concept of variable objects?
Erm... yes. Could be seen as such.
Variable objects are really nice and useful for displaying C-like structure if you
want a 1:1 display in the frontend when all (or at least most of) the state you
need can be kept in the debugger.
However, anything beyond that gets ugly and as soon as one arrives at
the point where one basically duplicates a lot of the internal backend
state in the frontend one develops the desire not to need to care for
the backend state at all...
> > I would expect this to be much simpler to implement on the gdb side and
> > gives all the flexibility needed (as far as I am concerned) on the
> > frontend side.
>
> Presumably your one-shot 'children listing' requires all values to be printed
> each time. Variable objects work by just printing the values which have
> changed.
I am fully aware of that. It has a very limited utility, though...
I basically have to fill, say, 20 lines in the typical 'Locals & Watchers'
view.
With a one-shot approach I can fire off 20 simple request, getting back
20 simple results (say, a total of 1000 bytes of data) compare them with
the previous results myself, re-populate the view, mark changes etc.
No big deal as it happens at most once per user interaction. Easy and
predictable.
With the 'update notifications' I get an unpredictable amount of data
(there could be an array with a few thousand children after all, all
being changed, stalling my communication line for an unpredicatable
amount of time), _and_ the data I get is insufficient as it, for instance,
does not tell me that a std::string has changed somewhere in the middle.
So I need to do a few 'one-shot evaluations' anyway to get the desired
results. All in all, less satisfactory.
Andre'
>
next prev parent reply other threads:[~2008-04-30 10:47 UTC|newest]
Thread overview: 34+ messages / expand[flat|nested] mbox.gz Atom feed top
2008-04-27 15:34 Nick Roberts
2008-04-29 15:58 ` Marc Khouzam
2008-04-30 7:02 ` Nick Roberts
2008-04-30 9:20 ` Vladimir Prus
2008-04-30 9:25 ` Nick Roberts
2008-04-30 9:39 ` Vladimir Prus
2008-04-30 16:29 ` Marc Khouzam
2008-05-01 15:56 ` Vladimir Prus
2008-05-01 17:29 ` Marc Khouzam
2008-05-01 12:15 ` Nick Roberts
2008-05-10 14:45 ` Nick Roberts
2008-05-28 19:15 ` Vladimir Prus
2008-05-29 12:01 ` Nick Roberts
2008-04-30 16:22 ` Marc Khouzam
2008-05-01 15:54 ` Vladimir Prus
2008-05-01 18:14 ` Marc Khouzam
2008-05-01 18:40 ` Vladimir Prus
2008-05-01 20:49 ` Daniel Jacobowitz
2008-05-01 23:38 ` Nick Roberts
2008-05-02 0:58 ` Marc Khouzam
2008-05-11 17:45 ` Vladimir Prus
2008-04-30 10:47 ` André Pönitz
2008-04-30 12:20 ` Vladimir Prus
2008-04-30 12:53 ` André Pönitz
2008-04-30 13:11 ` Vladimir Prus
2008-04-30 12:44 ` Nick Roberts
[not found] ` <200804301244.55116.apoenitz@trolltech.com>
2008-04-30 13:16 ` André Pönitz [this message]
2008-05-01 6:27 ` Nick Roberts
2008-05-05 11:46 ` André Pönitz
2008-04-30 14:59 ` Marc Khouzam
2008-05-01 12:06 ` Nick Roberts
2008-05-01 14:22 ` Marc Khouzam
2008-05-01 20:41 ` Daniel Jacobowitz
2008-04-30 8:59 ` Vladimir Prus
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=200804301249.08039.apoenitz@trolltech.com \
--to=apoenitz@trolltech.com \
--cc=gdb-patches@sources.redhat.com \
/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