Mirror of the gdb mailing list
 help / color / mirror / Atom feed
From: David Carlton <david.carlton@sun.com>
To: gdb@sources.redhat.com
Subject: Re: Move GDB to C++ ?
Date: Wed, 30 Jul 2008 20:29:00 -0000	[thread overview]
Message-ID: <yf2bq0fw3hd.fsf@luai12.SFBay.Sun.COM> (raw)
In-Reply-To: <uy73jnsmg.fsf@gnu.org> (Eli Zaretskii's message of "Wed, 30  Jul 2008 21:17:59 +0300")

I'm not an active GDB contributer any more, so feel free to ignore
anything that I'm saying, but:

I think this discussion is now largely beating around the bush.


Some people strongly prefer to work (on large scale projects) in C,
and really don't want to work in C++.  Some people strongly prefer to
work in C++, and really don't want to work in C.  (And some people
would rather work in Java, or Ruby, or Haskell, but none of those are
realistic options for a GDB transition, so I'm ignoring them.)

Given that, we can talk about technical advantages or disadvantages
until we're blue in the face, but I don't think that will get us any
farther.  We've already seen examples of how GDB is reimplementing
almost every C++ concept that you can think of in C; for the C++ fans,
that's convincing evidence that GDB development would proceed more
smoothly in C++ (those constructs could be done with less work), while
for the C fans, that's convincing evidence that GDB development
doesn't need C (proof by existence).

And I don't see that more examples are going to help much.  I think
Vladimir's proposal of doing one example of a conversion in detail is
sensible enough, but I don't think it will change anybody's feelings
on this matter.  I bet the results will look better to people who like
C++, and unconvincing to people who like C; indeed, Eli's already said
as much for the latter side.

And even if that example did point to significant benefits that C fans
agreed with (or, to take the other side, even if the results didn't
show code that looked significantly different in C than in C++), I'm
not sure that would matter: even if people were intellectually
convinced that their non-preferred language was "better" for GDB,
they'd still be unhappy programming in a language that felt wrong to
them.


I liked it how, at the start of this thread, Mark was very clear: he
doesn't like C++, he has no desire to program in C++, if GDB switches
to C++, he will find something else to work on.  That's what the
choice here looks like to me: you're not choosing implementation
languages, you're choosing contributors, you're trying to figure out
which implementation language will lead to a healthier contributor mix
going forward.

Which language will lead to more people enjoying contributing to GDB?
Which language will lead to more people feeling like they can work at
full productivity while contributing to GDB?  How will the choice of
language affect GDB's institutional memory?  How will the choice of
language affect whether or not newcomers are likely to join in,
whether or not they're likely to stay involved?

I have no idea how to answer these questions. :-(  (Other than running
an experiment by forking GDB.)  But they're what's important here.

David Carlton
david.carlton@sun.com


  reply	other threads:[~2008-07-30 19:56 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
2008-07-30 20:29             ` David Carlton [this message]
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=yf2bq0fw3hd.fsf@luai12.SFBay.Sun.COM \
    --to=david.carlton@sun.com \
    --cc=gdb@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