unofficial mirror of emacs-devel@gnu.org 
 help / color / mirror / code / Atom feed
From: "Pascal J. Bourguignon" <pjb@informatimago.com>
To: emacs-devel@gnu.org
Subject: Re: clang/emacs/ecb/semantic
Date: Fri, 30 Nov 2012 22:50:09 +0100	[thread overview]
Message-ID: <87zk1yhib2.fsf@kuiper.lan.informatimago.com> (raw)
In-Reply-To: E1TeWvQ-0006fV-Jz@fencepost.gnu.org

Richard Stallman <rms@gnu.org> writes:

>     Something that should have been merged into gcc a long time ago.
>
>     It generates the parse tree as xml.   http://www.gccxml.org/
>
> Do you mean, the entire parse tree in full detail?
> Would it be conceivable to feed this into a nonfree back-end?
> Would this mean that nonfree backends could take advantage
> of our free front-ends?
>
> If so, it is very dangerous -- it would open the door to a terrible
> setback for our defense of users' freedom.  Namely, the use of free
> software as part of compilers that are partly nonfree.  I don't
> remember, but I would guess that is why we have refused to merge it
> into GCC.

I can understand this reasonning.  But in practice the conclusion is
that Apple switches to llvm/clang, and llvm/clang as a lot of momentum
everywhere.

Wouldn't have been better to accept gcc-xml and have gcc cover 99% of
the "market", rather than rejecting it, and eventually have gcc left
with only 10% of the mind share, and clang/llvm 90%?  I'm afraid this
might end like that.


>     Llvm and clang provide natively a way to get the parse tree (and other
>     phases information), and therefore they can be used easily in IDE.
>
> LLVM and Clang open the door to the same terrible setback.  Since they
> are not copylefted, their front-ends can be used with nonfree
> back-ends and vice versa.

Definitely.  It's bad they're not GPL, and it's bad they're used in non
GPL environments.  But that's how things are.  llvm and clang are
providing a superior alternative to gcc for tool and IDE builders.


> They are being developed by people who don't care about users'
> freedom, funded by the worst enemy of users' freedom (Apple).

I don't know if Apple funds LLVM.  AFAIK it started as a normal
university project.

Would a good alternative (for freedom) to be that free compilers (GPL)
provide the exact formal grammar they parse, so that tool builders could
use it to write compatible parsers to use in their tools?

For example, now emacs has with cedet several parser generators
(bovinator, Wysent, etc), but they are not widely (easily) applied to a
large number of languages, because the grammars (of specific
implementations) are often not so easy to retrieve in a usable form.


-- 
__Pascal Bourguignon__                     http://www.informatimago.com/
A bad day in () is better than a good day in {}.




  parent reply	other threads:[~2012-11-30 21:50 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             ` Pascal J. Bourguignon [this message]
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                     ` clang/emacs/ecb/semantic Daniel Colascione
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=87zk1yhib2.fsf@kuiper.lan.informatimago.com \
    --to=pjb@informatimago.com \
    --cc=emacs-devel@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).