[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: clang and FSF's strategy

From: Ian Lance Taylor
Subject: Re: clang and FSF's strategy
Date: Tue, 21 Jan 2014 17:31:43 -0800

On Tue, Jan 21, 2014 at 12:19 PM, Eric S. Raymond <address@hidden> wrote:
> Wouldn't it make sense, then, to entirely drop the factoring
> restrictions from GCC so it can compete for developer attention more
> effectively with clang?
> Before clang existed, back when GCC had a near monopoly in its
> competitive space, there might have been a functional case for those
> restrictions. Reasonable people may differ on that; there's no point
> in arguing it retrospectively. Now, I submit, they have become a pointless
> gesture that serves only to hinder GCC development abd increase
> clang's competitive advantage.
> GCC has a lot of strengths to play from, most notably the maturity of
> its multiplatform and cross-development support.  I urge the FSF to
> fully free the code - drop the policy restrictions, encourage a
> flourishing ecosystem of surrounding plugins.  Let GCC, clang, and
> other alternatives compete for attention on pure technical merit.

I'm sympathetic to our comments regarding GCC vs. clang.  But I'm not
sure I grasp your proposed solution.  GCC does support plugins, and
has supported them for a few releases now.

GCC plugins have what turns out to be a significant defect: the plugin
interface simply exposes GCC internals, and as such is not stable
across releases.  I pushed for plugins in GCC, and I thought this
unstable interface would be OK, but I was wrong.  For general plugins
to be useful, we need a more stable interface.

But that is a technical issue, not a licensing issue.  You are talking
about licensing issues.  Do you think the licensing requirements on
plugins are too onerous?

Because of the non-standard interface, the most effective way for
people to write plugins for GCC today is to use something like MELT
(http://gcc-melt.org) or the GCC Python plugin
(https://fedorahosted.org/gcc-python-plugin/).  These provide a
somewhat more standard interface across releases.

Ideally we would develop a standard interface for C as well.  There
have been some efforts along those lines but as far as I know none of
them have been committed to the tree.


reply via email to

[Prev in Thread] Current Thread [Next in Thread]