unofficial mirror of emacs-devel@gnu.org 
 help / color / mirror / code / Atom feed
From: Daniel Colascione <dancol@dancol.org>
To: rms@gnu.org
Cc: pjb@informatimago.com, emacs-devel@gnu.org
Subject: Re: clang/emacs/ecb/semantic
Date: Sun, 02 Dec 2012 17:42:27 -0800	[thread overview]
Message-ID: <50BC0383.30208@dancol.org> (raw)
In-Reply-To: <E1TfJUR-0004mK-EP@fencepost.gnu.org>

[-- Attachment #1: Type: text/plain, Size: 3909 bytes --]

On 12/2/12 4:02 PM, Richard Stallman wrote:
>     That's absurd. Software freedom should never be at odds with
>     interoperability. Freedom and trust are inseparable. You can't use
>     free software to make paternalistic decisions about non-free software
>     for the user.
> 
> We use the GNU GPL to make sure that our code is not included in
> nonfree programs that violate users' freedom.  We develop software as
> a campaign for freedom, and recognizing that some people might try to
> include it in nonfree combinations, we use copyleft to stop them.
> 
> This is what we are doing here.  If you think standing up for freedom
> is "paternalistic", you don't have to participate.

We must consider utilitarian calculus; that is, we must choose the
actions will lead to the greatest good for the greatest number. By
choosing to limit gcc's potential for interoperability, its developers
have limited the number of users who can benefit from the good
provided by gcc's freedom.

gcc's monolithic design hinders integration of free and non-free
software alike. It's equally impractical to integrate a GPLv3 system
(like Emacs) with gcc and to integrate a EULA-encrusted tool with gcc;
thus, gcc did not (and to a large extent, does not) meet legitimate
user needs. The Clang developers met this pent-up demand and found
tremendous support: if current trends continue, there will be more
Clang users than gcc users. I know you argue that software freedom is
not a market, but if that's true and user counts don't matter, why
work on free software at all? Users matter because software cannot
suffer. The only freedom that matters is freedom that real people
enjoy. We should show the world that need be no choice between
programs that are free and programs that are useful.

While it is true that a hypothetical modular gcc could be integrated
with non-free parts (e.g., a proprietary IDE or a proprietary
back-end), the GPL would force developers of the non-free components
in the system to communicate with this modular gcc over well-defined
protocols, making it easily to substitute free components for the
proprietary ones. On the other hand, while Clang itself is free
software, Clang's permissive licensing makes it practical to tightly
couple free and non-free components of a system together into
inscrutable monoliths, and any free replacement for one of these
monoliths would have to be built from scratch. Additionally, Clang's
permissive licensing will eventually encourage the development of
non-free extensions, derivatives, and machine-target back-ends for
Clang itself, leading to ecosystem fragmentation and significant
impairment of end-user freedom.

gcc's users howled for certain features, and for a very long time,
gcc's developers ignored these pleas for fear that the needed features
might somehow aid proprietary software. In the end, this stubbornness
merely drove users to non-copyleft software that actually met their
needs. The people who blocked needed gcc features didn't stand up for
software freedom: actually, they neglected it.

> What is clear is that you hate copyleft so much that you would relish
> our defeat simply to replace a copylefted program with a noncopylefted
> one.  If that is how you feel about the GNU Project, you are entitled
> to your views, of course, but don't state them on this list.

I'm disappointed to see you resort to an ad hominem attack against
someone who largely shares your positions and goals. From you, of all
people, I expected more nuance. I "hate" copyleft and free software
about as much as you do, and it troubles me that you've interpreted
our minor difference of opinion as major malice on my part. Throughout
history, a hallmark of a troubled organization has the
characterization of loyal dissent as treason. It saddens me to see
this phenomenon here.


[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 235 bytes --]

  reply	other threads:[~2012-12-03  1:42 UTC|newest]

Thread overview: 46+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-11-29 16:32 clang/emacs/ecb/semantic Ramneek Handa
2012-11-29 19:59 ` clang/emacs/ecb/semantic Dmitry Gutov
2012-11-29 20:27   ` clang/emacs/ecb/semantic David Engster
2012-11-29 20:38     ` clang/emacs/ecb/semantic Óscar Fuentes
2012-11-29 20:49       ` clang/emacs/ecb/semantic David Engster
2012-11-30  2:52       ` clang/emacs/ecb/semantic Richard Stallman
2012-11-30  6:34         ` clang/emacs/ecb/semantic Pascal J. Bourguignon
2012-11-30 15:15           ` clang/emacs/ecb/semantic David Engster
2012-11-30 15:25             ` clang/emacs/ecb/semantic ramneek
2012-12-01  4:44               ` clang/emacs/ecb/semantic Richard Stallman
2012-12-04 17:04                 ` clang/emacs/ecb/semantic David Engster
2012-11-30 20:11           ` clang/emacs/ecb/semantic Richard Stallman
2012-11-30 21:02             ` clang/emacs/ecb/semantic Óscar Fuentes
2012-12-01 19:30               ` clang/emacs/ecb/semantic Richard Stallman
2012-12-01 19:30               ` clang/emacs/ecb/semantic Richard Stallman
2012-11-30 21:50             ` clang/emacs/ecb/semantic Pascal J. Bourguignon
2012-12-02  4:15               ` clang/emacs/ecb/semantic Richard Stallman
2012-12-02  5:13                 ` clang/emacs/ecb/semantic Daniel Colascione
2012-12-03  0:02                   ` clang/emacs/ecb/semantic Richard Stallman
2012-12-03  1:42                     ` Daniel Colascione [this message]
2012-12-03 17:08                       ` clang/emacs/ecb/semantic Eli Zaretskii
2012-12-03 17:21                         ` clang/emacs/ecb/semantic Chong Yidong
2012-12-03 17:56                           ` clang/emacs/ecb/semantic Eli Zaretskii
2012-12-03 18:14                             ` clang/emacs/ecb/semantic Daniel Colascione
2012-12-03 18:50                               ` clang/emacs/ecb/semantic Eli Zaretskii
2012-12-03 19:37                                 ` clang/emacs/ecb/semantic Stefan Monnier
2012-12-04  0:51                                   ` clang/emacs/ecb/semantic joakim
2012-12-04  2:17                                     ` clang/emacs/ecb/semantic Stefan Monnier
2012-12-04  1:04                                   ` clang/emacs/ecb/semantic joakim
2012-12-04  0:41                               ` clang/emacs/ecb/semantic Richard Stallman
2012-12-03 19:34                       ` clang/emacs/ecb/semantic Richard Stallman
2012-12-02  9:04                 ` clang/emacs/ecb/semantic Stephen J. Turnbull
2012-12-02 13:48                   ` clang/emacs/ecb/semantic Helmut Eller
2012-12-03  0:02                     ` clang/emacs/ecb/semantic Richard Stallman
2012-12-03 16:02                       ` clang/emacs/ecb/semantic Burton Samograd
2012-12-04  0:40                         ` clang/emacs/ecb/semantic Richard Stallman
2012-12-04 14:05                           ` clang/emacs/ecb/semantic Miguel Guedes
2012-12-05 11:49                             ` clang/emacs/ecb/semantic Richard Stallman
2012-12-05 17:21                             ` clang/emacs/ecb/semantic Paul Eggert
2012-12-03  0:02                   ` clang/emacs/ecb/semantic Richard Stallman
2012-12-02 13:59                 ` clang/emacs/ecb/semantic Pascal J. Bourguignon
2012-12-03  0:02                   ` clang/emacs/ecb/semantic Richard Stallman
2012-12-03  0:02                   ` clang/emacs/ecb/semantic Richard Stallman
2012-12-03  0:02                   ` clang/emacs/ecb/semantic Richard Stallman
2012-11-30  6:46         ` clang/emacs/ecb/semantic Helmut Eller
2012-11-30  2:51 ` clang/emacs/ecb/semantic Richard Stallman

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

  List information: https://www.gnu.org/software/emacs/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=50BC0383.30208@dancol.org \
    --to=dancol@dancol.org \
    --cc=emacs-devel@gnu.org \
    --cc=pjb@informatimago.com \
    --cc=rms@gnu.org \
    /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.
Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).