From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 22312 invoked by alias); 30 Jul 2008 19:56:43 -0000 Received: (qmail 22295 invoked by uid 22791); 30 Jul 2008 19:56:42 -0000 X-Spam-Check-By: sourceware.org Received: from sca-ea-mail-3.Sun.COM (HELO sca-ea-mail-3.sun.com) (192.18.43.21) by sourceware.org (qpsmtpd/0.31) with ESMTP; Wed, 30 Jul 2008 19:56:22 +0000 Received: from dm-sfbay-01.sfbay.sun.com ([129.145.155.118]) by sca-ea-mail-3.sun.com (8.13.6+Sun/8.12.9) with ESMTP id m6UJuJN2016845 for ; Wed, 30 Jul 2008 19:56:20 GMT Received: from luai12.sfbay.sun.com (luai12.SFBay.Sun.COM [10.6.186.42]) by dm-sfbay-01.sfbay.sun.com (8.13.8+Sun/8.13.8/ENSMAIL,v2.2) with ESMTP id m6UJuJuK007659; Wed, 30 Jul 2008 12:56:19 -0700 (PDT) Received: from luai12.sfbay.sun.com (localhost.localdomain [127.0.0.1]) by luai12.sfbay.sun.com (8.12.11.20060308/8.12.11) with ESMTP id m6UJuFvL016266; Wed, 30 Jul 2008 12:56:15 -0700 Received: (from carlton@localhost) by luai12.sfbay.sun.com (8.12.11.20060308/8.12.11/Submit) id m6UJuEYa016265; Wed, 30 Jul 2008 12:56:14 -0700 To: gdb@sources.redhat.com Subject: Re: Move GDB to C++ ? References: <487658F7.1090508@earthlink.net> <200807101901.m6AJ1UMQ007185@brahms.sibelius.xs4all.nl> <488F4AA7.7060001@gnu.org> From: David Carlton Date: Wed, 30 Jul 2008 20:29:00 -0000 In-Reply-To: (Eli Zaretskii's message of "Wed, 30 Jul 2008 21:17:59 +0300") Message-ID: User-Agent: Gnus/5.1006 (Gnus v5.10.6) XEmacs/21.4 (Jumbo Shrimp, linux) MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-IsSubscribed: yes Mailing-List: contact gdb-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: gdb-owner@sourceware.org X-SW-Source: 2008-07/txt/msg00338.txt.bz2 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