From: Eli Zaretskii <eliz@gnu.org>
To: tromey@redhat.com
Cc: gdb@sources.redhat.com
Subject: Re: Move GDB to C++ ?
Date: Wed, 30 Jul 2008 18:30:00 -0000 [thread overview]
Message-ID: <uy73jnsmg.fsf@gnu.org> (raw)
In-Reply-To: <m37ib458fn.fsf@fleche.redhat.com>
> Cc: gdb@sources.redhat.com
> From: Tom Tromey <tromey@redhat.com>
> Date: Tue, 29 Jul 2008 21:59:08 -0600
>
> >>>>> "Eli" == Eli Zaretskii <eliz@gnu.org> writes:
>
> Eli> So will someone please tell, loud and clear: what do we want to do the
> Eli> day after GDB is rewritten in C++? Let's suppose that we magically
> Eli> fast-forward to the day after everything was refactored and GDB is
> Eli> 110% pure, OO, C++ -- what will we do the next day that we cannot or
> Eli> have difficulties doing today?
>
> Nobody is proposing that we stop all work and rewrite GDB in C++, then
> look to see what we could do with it.
Did I say that someone did propose this? If you think I did, I
probably failed to express myself clearly.
> Aside from the one-time effort to make gdb compile with a C++
> compiler, it can be introduced gradually.
>
>
> C++ is not a silver bullet, it is an improvement.
Yes, but still no answer to the question I proposed.
> I think much of Ian's PDF on moving GCC to C++ applies just as well to
> gdb:
>
> http://www.airs.com/ian/cxx-slides.pdf
Those slides have only one _real_ GCC-specific argument in favor of
C++: on slide 11. All the rest is general comparison between C and
C++ based on toy examples.
What I would like to see, as a minimum, is a dozen such arguments, for
some of the more important parts of GDB code, that show how switching
to C++ will make those parts easier to understand, extend, and
maintain. For now, I've heard only one such argument: about struct
value, and it wasn't anywhere as detailed as a convincing argument
should be. If someone would come to me with such arguments on my
daytime job, she would be out of my office in less than 2 minutes.
> Naturally, every construct in C++ can be written using C. This is
> obvious, because gdb already does it. However, in C++ it is generally
> less work, and the result is often better -- more regular, simpler to
> reason about, more type-safe, less buggy, or in some cases faster.
As I said, such general arguments don't convince me where I get my
paycheck, and that's a place where I can actually force people to code
according to some standards.
next prev parent reply other threads:[~2008-07-30 18:18 UTC|newest]
Thread overview: 128+ messages / expand[flat|nested] mbox.gz Atom feed top
2008-07-10 18:46 Stan Shebs
2008-07-10 19:01 ` Mark Kettenis
2008-07-10 20:01 ` Stan Shebs
2008-07-10 20:04 ` Paul Koning
2008-07-10 20:40 ` Andrew Cagney
2008-07-10 21:31 ` Stan Shebs
2008-07-10 22:30 ` Nick Roberts
2008-07-10 23:49 ` Stan Shebs
2008-07-11 6:14 ` Vladimir Prus
2008-07-11 12:40 ` Andrew Cagney
2008-07-11 12:23 ` Robert Dewar
2008-07-11 16:03 ` Dave Korn
2008-07-10 21:54 ` Mark Kettenis
2008-07-11 6:26 ` Joel Brobecker
2008-07-11 8:55 ` Vladimir Prus
2008-07-11 9:23 ` Andreas Schwab
2008-07-11 9:32 ` Vladimir Prus
2008-07-11 14:27 ` Andrew Cagney
2008-07-11 14:34 ` Daniel Jacobowitz
2008-07-11 14:54 ` Paul Koning
2008-07-11 15:30 ` Pedro Alves
2008-07-11 16:09 ` Dave Korn
2008-07-11 16:26 ` Daniel Jacobowitz
2008-07-12 5:41 ` Robert Dewar
2008-07-29 17:29 ` Andrew Cagney
2008-07-29 18:08 ` Vladimir Prus
2008-07-29 18:09 ` Thiago Jung Bauermann
2008-07-29 19:05 ` Andrew Cagney
2008-07-29 19:06 ` Thiago Jung Bauermann
2008-07-29 19:35 ` Thiago Jung Bauermann
2008-07-30 7:18 ` Vladimir Prus
2008-07-30 12:11 ` André Pönitz
2008-07-30 12:35 ` Mark Kettenis
2008-07-30 15:39 ` André Pönitz
2008-07-30 17:52 ` Eli Zaretskii
2008-07-30 17:47 ` Eli Zaretskii
2008-07-29 19:32 ` Eli Zaretskii
2008-07-29 19:45 ` Stan Shebs
2008-07-30 18:18 ` Eli Zaretskii
2008-07-30 19:05 ` Stan Shebs
2008-07-30 19:15 ` Eli Zaretskii
2008-07-30 19:42 ` Stan Shebs
2008-07-31 15:37 ` Andrew Cagney
2008-07-30 19:30 ` Andrew Cagney
2008-07-30 19:56 ` Mark Kettenis
2008-07-31 9:03 ` André Pönitz
2008-07-31 9:33 ` Alpár Jüttner
2008-07-31 10:07 ` Alpár Jüttner
2008-07-30 5:24 ` Tom Tromey
2008-07-30 18:30 ` Eli Zaretskii [this message]
2008-07-30 20:29 ` David Carlton
2008-07-30 20:30 ` Eli Zaretskii
2008-07-30 20:38 ` Eli Zaretskii
2008-07-31 4:52 ` Michael Veksler
2008-07-31 20:03 ` Ian Lance Taylor
2008-07-30 9:25 ` Vladimir Prus
2008-07-30 11:55 ` Salvatore Lionetti
2008-07-30 18:45 ` Eli Zaretskii
2008-07-30 19:19 ` Stan Shebs
2008-07-29 23:59 ` Mark Kettenis
2008-07-10 19:35 ` Jan Kratochvil
2008-07-10 22:41 ` Tom Tromey
2008-07-11 9:57 ` Andrew STUBBS
2008-07-11 11:44 ` Daniel Jacobowitz
2008-07-11 12:43 ` Pierre Muller
2008-07-11 13:14 ` Andrew Cagney
2008-07-13 23:18 ` Tom Tromey
2008-07-14 0:15 ` Nick Roberts
2008-07-14 8:49 ` Vladimir Prus
2008-07-14 13:21 ` Robert Dewar
2008-07-14 15:54 ` Vladimir Prus
2008-07-14 15:58 ` Robert Dewar
2008-07-14 16:03 ` Robert Dewar
2008-07-14 16:23 ` Vladimir Prus
2008-07-14 16:39 ` Robert Dewar
2008-07-14 17:53 ` Vladimir Prus
2008-07-16 19:06 ` Thiago Jung Bauermann
2008-07-14 17:54 ` Mark Kettenis
2008-07-14 16:12 ` Daniel Jacobowitz
2008-07-14 16:15 ` Robert Dewar
2008-07-14 16:18 ` Robert Dewar
2008-07-14 16:21 ` Bob Rossi
2008-07-14 16:31 ` Vladimir Prus
2008-07-14 19:00 ` Tom Tromey
2008-07-12 3:30 ` Michael Snyder
2008-07-14 14:54 ` Andrew Cagney
2008-07-20 14:36 ` Michael Eager
2008-07-31 8:40 ` Vladimir Prus
2008-07-31 14:37 ` Alpár Jüttner
2008-07-31 22:30 ` GDB to C++ issue: deletion Paul Hilfinger
2008-07-31 22:40 ` Daniel Jacobowitz
2008-07-31 22:58 ` Paul Hilfinger
2008-07-31 23:25 ` Daniel Jacobowitz
2008-08-01 5:38 ` Ian Lance Taylor
2008-08-01 8:52 ` André Pönitz
2008-08-01 9:53 ` Eli Zaretskii
2008-08-01 12:57 ` Daniel Jacobowitz
2008-08-01 14:57 ` Paul Koning
2008-08-01 15:31 ` Eli Zaretskii
2008-08-01 13:51 ` André Pönitz
[not found] ` <20080801125124.GA13594@caradoc.them.org>
[not found] ` <uzlnwn9jq.fsf@gnu.org>
2008-08-01 13:59 ` Daniel Jacobowitz
2008-08-01 15:17 ` Eli Zaretskii
2008-08-01 15:29 ` Daniel Jacobowitz
2008-08-01 15:38 ` Eli Zaretskii
2008-08-12 14:40 ` Problem with can_use_hw_breakpoint Jeremy Bennett
2008-08-12 14:51 ` Eli Zaretskii
2008-08-12 14:56 ` Jeremy Bennett
2008-07-31 20:00 ` Move GDB to C++ ? Eli Zaretskii
2008-08-01 13:13 ` Daniel Jacobowitz
2008-08-01 13:47 ` Eli Zaretskii
2008-08-01 14:04 ` André Pönitz
2008-08-01 15:20 ` Eli Zaretskii
2008-08-04 9:34 ` André Pönitz
2008-08-01 14:21 ` Daniel Jacobowitz
2008-08-01 15:23 ` Eli Zaretskii
2008-08-01 16:14 ` Vladimir Prus
2008-08-01 19:20 ` Eli Zaretskii
2008-08-02 5:55 ` Vladimir Prus
2008-08-02 8:07 ` Eli Zaretskii
2008-08-02 9:22 ` Vladimir Prus
2008-08-02 9:47 ` Eli Zaretskii
2008-08-02 10:00 ` Vladimir Prus
2008-08-02 10:16 ` Eli Zaretskii
2008-08-01 13:55 ` Mark Kettenis
2008-08-01 14:11 ` André Pönitz
2008-08-01 15:02 ` Stan Shebs
2008-08-01 15:05 ` Vladimir Prus
2008-08-01 15:17 ` Daniel Jacobowitz
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=uy73jnsmg.fsf@gnu.org \
--to=eliz@gnu.org \
--cc=gdb@sources.redhat.com \
--cc=tromey@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