This is the mail archive of the
mailing list for the GDB project.
Re: [RFC/WIP PATCH 00/14] I/T sets
- From: Pedro Alves <pedro at codesourcery dot com>
- To: gdb-patches at sourceware dot org
- Cc: Tom Tromey <tromey at redhat dot com>
- Date: Fri, 16 Dec 2011 19:37:52 +0000
- Subject: Re: [RFC/WIP PATCH 00/14] I/T sets
- References: <email@example.com> <firstname.lastname@example.org>
On Wednesday 30 November 2011 19:35:38, Tom Tromey wrote:
> >>>>> "Pedro" == Pedro Alves <email@example.com> writes:
> Pedro> Following up on <http://sourceware.org/ml/gdb/2011-11/msg00013.html>.
> Pedro> This patch set seeds an implementation of a general
> Pedro> inferior/process/thread/core set construct, or inferior/thread set
> Pedro> (I/T set, or just itset) for short, which should allow users to refer
> Pedro> to large numbers of inferiors, processes, threads, and cores in a
> Pedro> consistent way and using a flexible syntax.
> Ok, I read through the series and sent all my comments. Some patches I
> did not review in detail, since I don't feel competent to do so.
> Pedro> IPTC sets are a collection of arbitrarily many processes,
> Pedro> threads, and cores.
> I wish we had a better name.
> The current name seems to gain a letter with every new thread on the
> topic :-)
That was kind of on purpose. :-)
The best name I could think of is "scope". If we call these things
scopes, we can also rename the itfocus command to "scope", which can
be abbreviated as "sc". ("s" is already step, obviously). It's spelled
itfocus currently because "focus" was already taken by the TUI.
It looks like this:
curinf> scope t3 break -stop i1 main
Breakpoint 2 at 0x40068c: file threads.c, line 35.
curinf> scope i1
Current inferior is 1.
i1> sc all
Current inferior is 1.
> Pedro> Along the idea that we
> Pedro> need an intersection operator somehow, an idea I've been kicking in
> Pedro> the background, is to make all kinds of objects have the same stand,
> Pedro> and require, say, a one letter prefix to identify what kind of object
> Pedro> we're specifying. E.g, i for inferior, p for process, t for thread, c
> Pedro> for core and a for Ada task. In this scheme, the '.' is really a set
> Pedro> intersection operator, and the ',' is the union operator. I'm very
> Pedro> much inclined to try this route, but I'm also very interested in
> Pedro> learning other's opinions.
> I like this idea.
I've implemented it. I'll post a WIP v2 series with that change (and
many others) shortly.