From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 2895 invoked by alias); 12 Apr 2010 22:41:20 -0000 Received: (qmail 2884 invoked by uid 22791); 12 Apr 2010 22:41:19 -0000 X-SWARE-Spam-Status: No, hits=-2.0 required=5.0 tests=BAYES_00,DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,SPF_HELO_PASS,T_RP_MATCHES_RCVD X-Spam-Check-By: sourceware.org Received: from smtp-out.google.com (HELO smtp-out.google.com) (74.125.121.35) by sourceware.org (qpsmtpd/0.43rc1) with ESMTP; Mon, 12 Apr 2010 22:41:12 +0000 Received: from wpaz29.hot.corp.google.com (wpaz29.hot.corp.google.com [172.24.198.93]) by smtp-out.google.com with ESMTP id o3CMf8QI030518 for ; Tue, 13 Apr 2010 00:41:09 +0200 Received: from qyk5 (qyk5.prod.google.com [10.241.83.133]) by wpaz29.hot.corp.google.com with ESMTP id o3CMf7HF011335 for ; Mon, 12 Apr 2010 15:41:07 -0700 Received: by qyk5 with SMTP id 5so7010344qyk.3 for ; Mon, 12 Apr 2010 15:41:07 -0700 (PDT) Received: by 10.229.97.207 with SMTP id m15mr7052632qcn.6.1271112067262; Mon, 12 Apr 2010 15:41:07 -0700 (PDT) Received: from coign.google.com (adsl-71-133-8-30.dsl.pltn13.pacbell.net [71.133.8.30]) by mx.google.com with ESMTPS id x34sm6677607qce.21.2010.04.12.15.41.03 (version=TLSv1/SSLv3 cipher=RC4-MD5); Mon, 12 Apr 2010 15:41:05 -0700 (PDT) To: "Weddington\, Eric" Cc: Manuel =?utf-8?B?TMOzcGV6LUliw6HDsWV6?= , "Dave Korn" , "Jack Howarth" , "Steven Bosscher" , "Duncan Sands" , Subject: Re: dragonegg in FSF gcc? References: <258DDD1F44B6ED4AAFD4370847CF58D50A5D3E17@csomb01.corp.atmel.com> From: Ian Lance Taylor Date: Mon, 12 Apr 2010 22:51:00 -0000 In-Reply-To: <258DDD1F44B6ED4AAFD4370847CF58D50A5D3E17@csomb01.corp.atmel.com> (Eric Weddington's message of "Mon\, 12 Apr 2010 11\:43\:03 -0600") Message-ID: User-Agent: Gnus/5.11 (Gnus v5.11) Emacs/22.1 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-System-Of-Record: true X-IsSubscribed: yes Mailing-List: contact gcc-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Id: List-Archive: List-Post: List-Help: Sender: gcc-owner@gcc.gnu.org X-SW-Source: 2010-04/txt/msg00268.txt.bz2 "Weddington, Eric" writes: >From my perspective (and someone correct me if I'm wrong) it is >easier for LLVM to do such marketing and focus on usability details >because they seem to have a central driver to the project, whether >person/group (founder(s)/champion(s)). GCC is, what I would call, >aggressively decentralized; Who would do such marketing? Who decides >what marketing to do? Who decides the usability details? Who would >work on it? GCC is the epitome of the saying "If you want something >done, do it yourself." There is no central authority who can, or >will, make a decision about this. There is a Steering Committee for >GCC, but as they keep saying at the GCC Summits, their power and >scope is very limited. Having a central driver would certainly help--though only to the extent that anybody listened. I have seen people complain that the gcc developers are ornery and difficult to work with. I've been reading the mailing lists with that in mind, and I actually don't see that very much. However, it only takes a very small number of mean-spirited messages to give that impression. What I do see is that relatively few gcc developers take the time to reach out to new people and help them become part of the community. I also see a lot of external patches not reviewed, and I see a lot of back-and-forth about patches which is simply confusing and offputting to those trying to contribute. Joining the gcc community requires a lot of self-motivation, or it takes being paid enough to get over the obstacles. There is also the matter of the old code base, the lack of a clean separation between passes, and, most important, weak internal documentation. For example, in my view of internal documentation: How to write a new backend: good. Details of RTL IR: adequate. Details of GIMPLE IR: poor. Details of tree IR: poor. How to write a new optimization pass: poor. How to write a new frontend: nonexistent. General overview of compiler source: nonexistent. Overview of internal compiler datastructures: nonexistent. I am as responsible for this state of affairs as anybody. Ian