A threat to Free Software? The &quoGCC Introspector&quo, No a threat to abusers of Power

Posted 27 Aug 2003 at 22:04 UTC by mdupont Share This

The Introspector project seeks to grant users rights that the gcc developers seek to take away from the users. The right to freely access the compilers representation of your source code.

A threat to Free Software? The "GCC Introspector". No way.

I was trolling the web and found this refernce to my project http://www.lrde.epita.fr/cgi-bin/twiki/view/Main/CompilationLectureLog > >> {"remark"}: A threat > >> to Free Software? The "GCC Introspector".

I dont think the introspector is a threat Free Software, it is a threat to the monopoly of the few elite on the GCC software,

It is a threat to the people who have forgotten about the spirit of GNU manifesto. The introspector is under the GPL and are all its parts, its intends on granting revolutionary freedoms back to the users of the GCC, all in the spirit of the GNU manifesto.

You could also say that Parrot or DotGnu or http://www.tunes.org is a threat, because they are providing a standard file format and language for manipulation of program representation by the user at a higher or lower level.

You have the right to have access to the way that the gcc represents your program, because the software is free. It is just an accident that that data is stored in the memory of the compiler itself. The introspector project seeks to make that available to the users, in the spirit of the gnu manifesto.

I take offence to the repeated attempts of the gcc developers to limit the public knowledge of the gcc internals as explified in this mail here :

GNU FUD : http://gcc.gnu.org/ml/gcc/2003-08/msg01136.html

"""" The tree and rtl dumps are intended as debugging aids only. There is no need for them to be complete, they only need to include info we need for debugging. Since we never try to process them, we would never notice if they were incomplete.

As for completing them, that is a potential problem. An FSF policy, intended to prevent people from subverting the GPL, prevents us from emitting debug/intermediate files that could be used by others to use proprietary code with gcc without linking to gcc. This is an inconvenience, but it is current FSF policy so we must respect it. """"

What a primitive and unproductive policy.

I have collected even more FUD snippets here http://gnufans.net/intrspctr.pl?GnuManifesto

I think that the influence of money and fame has corrupted many free software developers to try and protect their code from being documented and understood for the wrong reasons.

The introspector opens the software not up to non-free software, but to a whole new paradigma of metaprogramming, much like the www.tunes.org project.

Remember, more non-free software tools use the gcc -fdump-translation-unit function because it does not require patches to the compiler. More non-free software is supported indirectly by that than the introspector. Non free programs wont want to make a dependancy on a patched compiler, but the use the standard dumper of program representation provided in the official gcc release.


A quote from the The GnuManifesto, posted 27 Aug 2003 at 22:23 UTC by mdupont » (Master)

A Quote from the The GnuManifesto http://www.gnu.org/gnu/manifesto.html

[[Why Many Other Programmers Want to Help I have found many other programmers who are excited about GNU and want to help.

Many programmers are unhappy about the commercialization of system software. It may enable them to make more money, but it requires them to feel in conflict with other programmers in general rather than feel as comrades. The fundamental act of friendship among programmers is the sharing of programs; marketing arrangements now typically used essentially forbid programmers to treat others as friends. The purchaser of software must choose between friendship and obeying the law. Naturally, many decide that friendship is more important. But those who believe in law often do not feel at ease with either choice. They become cynical and think that programming is just a way of making money.

By working on and using GNU rather than proprietary programs, we can be hospitable to everyone and obey the law. In addition, GNU serves as an example to inspire and a banner to rally others to join us in sharing. This can give us a feeling of harmony which is impossible if we use software that is not free. For about half the programmers I talk to, this is an important happiness that money cannot replace. ]]

I find that the GCC developers have forgotten about this part of the manifesto.

Here are threads that show that there are many people who forgot, they are setting up new "Forbidden areas". Many of these people make money off of the GCC. Maybe the Animal Farm Revolotion has come full Circle?

http://gcc.gnu.org/ml/gcc/2000-10/msg00487.html -- hate mail reference

http://gcc.gnu.org/ml/gcc/2000-10/msg00489.html "The job is technically doable. But working on GCC is not just technical. Which brings us to the next (political) reason:

| 2/ people have started on the work, but gotten so much political hate-mail | (`you're going to KILL THE GPL. I hate your guts.') that they stopped.

Or people have started the work but refrain from publishing their in fear of getting such mails -- which in effect is equivalent to having nothing.

It is an ironical situation that a reading of "free software philosophy" prevents free software. " http://gcc.gnu.org/ml/gcc/2002- 02/msg01792.html http://gcc.gnu.org/ml/gcc/2002-02/msg01823.html http://gcc.gnu.org/ml/gcc/2002-06/msg01285.html http://gcc.gnu.org/ml/gcc/2002-10/msg00806.html http://gcc.gnu.org/ml/gcc/2000-10/msg00275.html linus speaks out http://gcc.gnu.org/ml/gcc/2000-10/msg00530.html

Article moderation coming soon, posted 27 Aug 2003 at 23:08 UTC by raph » (Master)

I'm more than a little overwhelmed with work right now, but I do want people to know that a good system for moderating article drafts is going to be implemented as soon as I can break loose a chunk of time. Alternatively, if someone else wants to volunteer the coding and testing, I can write up a spec of what I have in mind.

Banned from the Dotgnu project, posted 27 Aug 2003 at 23:19 UTC by Omnifarious » (Journeyer)

Now I know why they banned you from the the Dotgnu Project.

Bringing up the issue of the Free Software philosophy being used as an excuse to try to stifle the creation of Free Software is interesting, and would be good if it weren't for all the partisan ranting. But, the way you've brought it up here makes me want to disagree with you simply because I find your tone to be shrill and offensive.

Get over it, and build something. Or, if you're being actively prevented from building something, post about that in a different tone. Or, get someone else who understands the issue and can write without making it sound like paranoid ranting to write the article for you.

I think the GCC XML introspector project is very interesting and potentially useful. I find the idea that outputting a detailed internal representation of a source tree to be dangerous because it might enable someone to write a proprietary gcc backend to be wrong and hypocritical. But, I can't help but think that maybe something about your interpersonal interaction style has something to do with the resistance you're getting.

well, it's not surprising, posted 28 Aug 2003 at 01:11 UTC by exa » (Master)

given the social underachievement of many programmers, such absurd situations are to be expected.

try to *talk* to rms.

i have no idea if mdupont got flamed unjustly. i'm just saying that might as well be the case. programmers are rarely rational, innovative people who want to make progress.

try to *talk* to rms. , posted 28 Aug 2003 at 06:16 UTC by mdupont » (Master)

exa I have talked may times about this to rms and others, In fact, I mail with him often.

My issue is not with rms, but with the way that gcc developers are supporting on one hand an export on their own, but on the other hand

raph If you want to delete this article, please feel free.

It is not that the free software philosophy is the problem, but those who seek to gain more power and control than is provisioned by the gpl.

Omnifarious you say "Get over it, and build something" I have been building something for years now, you can download and run it and use it.

you say "Or, get someone else who understands the issue and can write without making it sound like paranoid ranting to write the article for you. "

OK, what parts dont you like? I can post a follow up here that is an edited version.

try to *talk* to rms. , posted 28 Aug 2003 at 06:17 UTC by mdupont » (Master)

exa I have talked may times about this to rms and others, In fact, I mail with him often.

My issue is not with rms, but with the way that gcc developers are supporting on one hand an export on their own, but on the other hand

raph If you want to delete this article, please feel free.

It is not that the free software philosophy is the problem, but those who seek to gain more power and control than is provisioned by the gpl.

Omnifarious you say "Get over it, and build something" I have been building something for years now, you can download and run it and use it.

you say "Or, get someone else who understands the issue and can write without making it sound like paranoid ranting to write the article for you. "

OK, what parts dont you like? I can post a follow up here that is an edited version.

try to *talk* to rms. , posted 28 Aug 2003 at 06:18 UTC by mdupont » (Master)

exa I have talked may times about this to rms and others, In fact, I mail with him often.

My issue is not with rms, but with the way that gcc developers are supporting on one hand an export on their own, but on the other hand

raph If you want to delete this article, please feel free.

It is not that the free software philosophy is the problem, but those who seek to gain more power and control than is provisioned by the gpl.

Omnifarious you say "Get over it, and build something" I have been building something for years now, you can download and run it and use it.

you say "Or, get someone else who understands the issue and can write without making it sound like paranoid ranting to write the article for you. "

OK, what parts dont you like? I can post a follow up here that is an edited version.

try to *talk* to rms. , posted 28 Aug 2003 at 06:18 UTC by mdupont » (Master)

exa I have talked may times about this to rms and others, In fact, I mail with him often.

My issue is not with rms, but with the way that gcc developers are supporting on one hand an export on their own, but on the other hand

raph If you want to delete this article, please feel free.

It is not that the free software philosophy is the problem, but those who seek to gain more power and control than is provisioned by the gpl.

Omnifarious you say "Get over it, and build something" I have been building something for years now, you can download and run it and use it.

you say "Or, get someone else who understands the issue and can write without making it sound like paranoid ranting to write the article for you. "

OK, what parts dont you like? I can post a follow up here that is an edited version.

Attempted to post, bu cannot, posted 28 Aug 2003 at 06:21 UTC by mdupont » (Master)

See my post here

Sorry about the multiple posts and my Tone, posted 28 Aug 2003 at 06:34 UTC by mdupont » (Master)

Sorry again for replying multiple times, I will try and avoid that.

Also about my tone, if anyone feels that parts of my post are wrong in tone, point them out and I will address that issue.

I still think that my statements are true, even if they point out a bad trend in our free society today.

I have been thinking about this issue for at least 2 years now, and I always confused the GPL with the people who are benefiting from it.

My issue is not with the GPL at all as some may portray, but it is with the way that people are not documenting and not helping others in the way described by the manifesto.

The fundamental act of friendship among programmers is the sharing of programs; marketing arrangements now typically used essentially forbid programmers to treat others as friends.

If you were to read this passage, and then go to the GCC list and talk about the sharing of programs and data that will allow you to understand the ASTS of the gcc, you would not find a friendly atmosphere, but a hostile one.

Then you can think about the marketing arrangements that the developers have, many are making money off the gcc, many are working for big companies.

Then you might think similar to me.

There are other gcc innovations that have been squashed in the process, the JVM backend for example, the C backend.

It is important that we are able to criticize this behaviour, and advogato is the right place to do it, I think. raph : if you want me to change this article or edit parts, then I will do that, please tell me what you think.

mike

It is not about me personally : It is the generation conflict in a small revolutionary society, posted 28 Aug 2003 at 06:43 UTC by mdupont » (Master)

<person> Omnifarious</person> wrote :

But, I can't help but think that maybe something about your interpersonal interaction style has something to do with the resistance you're getting.

My style is confrontational, I know. But you also have to see that the resistance is not because of me. It was there along time ago.

I am just the only person who is making an public issue out of it. I have thought about this for a long time, I can only conclude that there is a conflict of interest here and that the GNU revolution has come full circle.

Instead of giving power, the have-nots who have now become the haves are now trying to maintain power.

I am a from the next generation of developers, what we have here is a generation conflict.

Read through my posts, this is not about me, check this quote here :

Gabriel Dos Reis The job is technically doable. But working on GCC is not just technical. Which brings us to the next (political) reason: | 2/ people have started on the work, but gotten so much political hate-mail | (`you're going to KILL THE GPL. I hate your guts.') that they stopped.

Or people have started the work but refrain from publishing their in fear of getting such mails -- which in effect is equivalent to having nothing.

Now, Why is he saying "hate mails"? I think that this issue is not about me at all.

questions of derived works, posted 28 Aug 2003 at 08:14 UTC by habes » (Journeyer)

This is an extremely poor article, which is too bad because the issues it raises are very interesting. Many of the tactics the FSF uses to further free software are well-known. For an organization with such an ideological focus they are quite pragmatic; for example the LGPL was a compromise designed to advance the use of free software libraries in areas where non-free libraries were already entrenched. When authors began using it more often than the FSF thought was necessary, they demoted it, changed its name, and discouraged its use.

Before reading this article I was unaware that these tactics extend into the design and implementation of programs themselves. As someone who is not familiar with GCC internals, what I glean from this situation is that the GCC developers are intentionally underdocumenting or underimplementing internal data structures to prevent others from writing programs that can hook into intermediate compilation stages without being obligated to release these separate programs under the GPL. My first reaction is that this is contrary to the spirit of free software. After all, what is a greater bane to free software developers than non-free software that shamelessly refuses to interoperate? How much time has been spent reverse-engineering file formats and network protocols because the de facto standards (SMB, Word documents, etc.) are kept secret?

On the other hand, GCC is not designed to interoperate, it is designed to perform a complete process, beginning to end. Enhancements to the GCC software are required to be licensed under the GPL, which is the basic exchange on which the GPL'd software empire is built: the original author(s) allow unlimited copying and distribution, but in exchange anyone making changes is forced to release their changes under the GPL also. The GPL can require this by working with copyright law and the idea of "derived works." Whatever is a derived work of a GPL'd program must also be GPL'd. Whatever is not a derived work is outside the scope of what the GPL can regulate.

Common belief is that in the context of software, program B is derived from A if an executable for B includes any code from A or links against A. Contrast this with two programs that communicate over a network or through a socket on the same machine; these are commonly believed to be independent programs that work together.

Back to GCC, this "Introspector" would allow a third party to write a new GCC backend as a separate program instead of requiring the new backend to be linked to GCC (and thus subject to the GPL).

I see this issue as part of a bigger question that is plaguing software authors: what is a derived work in the context of software? It is a question that will decide to what extent software authors of today can control software authors of tomorrow. Software has never been like other copyrighted works. Unlike a book author, a programmer does not sit down in front of a blank screen and write from scratch, beginning to end. The nature of software is to pull together parts from many different places, research, reuse, and adapt. The "derived work" parts of copyright law were not written with this kind of process in mind; most cases of derived works are very simple and unambiguous. A translation of a book, a book made into a movie, or new lyrics to an old song -- these are the kind of derived works that copyright law was designed to handle smoothly. Software is a much more complex landscape, and the process of writing software makes derived works much more difficult to define and recognize.

On one hand is SCO who reads a very broad interpretation of derived works. They claim that much of IBM's independently developed code is derivative from UNIX simply because it was written to work with UNIX. If the courts were to accept this theory, it is hard to imagine the degree to which copyright holders of old software could flex their muscles against software authors who try to write anything. No software is developed in a vacuum, software is virtually always written to work with and run on top of other software. Allowing SCO's interpretation to stand would be sheer madness. It would be impossible to ever write software that was not legally considered a derived work, giving yesterday's authors incredible power over the authors of today.

On the other hand, a narrow interpretation of "derived work" leaves numerous loopholes through which copyright law could be rendered almost meaningless. It is often possible to find a technical measure that allows one to create works that common sense says are "derived" but do not actually link against the program they are derived from. Writing a backend for GCC that is decoupled from the main program is an excellent example of this.

This brings me finally back to the specific question that the article raises: is it reasonable for the GCC authors to make it difficult for external programs to interface with GCC? I really can't decide. On one hand, they are the authors and this is their way of preventing people from effectively circumventing copyright law by using a technical measure to make what is really a derived work technically not derived. You could say that they are taking steps to protect their work where copyright lets them down. On the other hand, it does seem outside the spirit of free software to intentionally be obfuscating and secretive. Free software is supposed to thrive on openness.

End to End? Or User augmented, posted 28 Aug 2003 at 08:33 UTC by mdupont » (Master)

habes wrote : On the other hand, GCC is not designed to interoperate, it is designed to perform a complete process, beginning to end.

I disagree strongly on this, The entire idea of the introspector is that by involving the user in the compile phase better programs can be produces.

The user can give hints to the compiler about where to optimize, how a structure is used. All of these things can produce better code.

Also there are always idioms that are embedded in the code, the introspector allows them to be extracted and documented as first class objects.

habes wrote : Enhancements to the GCC software are required to be licensed under the GPL, which is the basic exchange on which the GPL'd software empire is built: the original author(s) allow unlimited copying and distribution, but in exchange anyone making changes is forced to release their changes under the GPL also.

Also I disagree here, my vision is that the user aguments the gcc with specific rules and idioms that are derived from the source code fed to the compiler. These rules dont need to be GPLED, they could be personal to the programmer. Some rules can be published under the gpl and all of the source of the introspector will be under the GPL.

In summary : currently the end user is excluded from participation in the compile process, I think that this is wrong and that a much better compiler can be produced by user involvement.

mike

Third party backends? Maybe so what?, posted 28 Aug 2003 at 10:02 UTC by mdupont » (Master)

habes Wrote : Back to GCC, this "Introspector" would allow a third party to write a new GCC backend as a separate program instead of requiring the new backend to be linked to GCC (and thus subject to the GPL).

That is the offical fear of the gcc developers, and this is being done right now with the SWAG/PBS http://www.swag.uwaterloo.ca/pbs/

I reported this to the FSF as a GPL violation with no result.

1. The introspector ontology will be under the GPL as will all the tools.

2. The data files are derived from the input to the compiler and under the copyright of the user.

3. It will be possible to make non-free programs that accept datafiles and do something with them, that is already possible using the current dump files from the gcc.

The intent of the introspector is in the long term to make a set of program that contains the compiler, editor and proof engine that exchange data via the net or some other means.

If the GPL is not able to be applicable to networked applications, how can MYSQL say that the network clients are "linked" to the mysql server?

There is no way to prevent users from writing their own compiler modules and publishing them under their own license, so what? Is that a big problem? A company would still have to redistributed the gcc in order to make a full product, or just make a stand alone transformation tool.

I dont think that this is a very big danger and in the long term any free compiler modules will fare better than non-free ones.

mike

FSF is both ideological and pracmatic, posted 28 Aug 2003 at 10:41 UTC by abraham » (Master)

The FSF is an extremely ideological organization about the ends, and yet equally pragmatic about the means. The GPL itself is an example of that, it restricts your freedoms in order to promote your freedoms. Releasing the source to the PD would make it more free, but it would not ensure that derived works kept this freedom. Hence, the GPL.

Having a public standard for the GCC middle-end format is similar, it would make GCC more useful, but also weaken the legal case for alternative front-ends being derived works. This is an ancient discussion, and the historic judgement (by RMS) is that such an open middle-end would hurt free software more (due to the risk of new front- and back-ends being made proprietary) than it would benefit free software (by making GCC more useful). However, it is also the general impression that this trade-off will eventually change, and the benefit of new free tools that use such a standardized middle-end, and the more decoupled development it allows, will outweight the risk of such tools being made proprietary.

The key to any discussion with FSF (read RMS) is to keep your arguments pragmatic, and back them with data. Ideological arguments have no chance, and emotional arguments are a total waste. RMS is immune to both. This is why some people find RMS impossible to argue with, and others find him a breeze. I personally love it, I present him with the facts, and he make a judgement based on them. End of discussion, unless I can find more facts.

Once you reallize that, you will find that RMS is quite flexible. That is whu the FSF release software under other licenses that the GPL, not for ideological reasons, but because it pragmatically is judged to promote free software more than the GPL for reasons specific to that software.

GPL will get a documented and standardized middle end format when someone create tools that use such a format, and convince RMS how useful they are (easiest to do if lots of people use them), and that they cannot be created without such a format. Or if nobody manages that, when GCC grow to a size that the development will be unable to continue without it.

It is certainly not going to happen because of a semi-coherent philosphical and emothional rant on Advogato.

Take the good with the bad, leave RMS out of it., posted 28 Aug 2003 at 10:56 UTC by mdupont » (Master)

abraham wrote: The key to any discussion with FSF (read RMS) is to keep your arguments pragmatic, and back them with data.

I have discussed this topic with RMS in person and on the mail. We disagree on the need to do this, and I dont bother him anymore with this topic, he is largly off the gcc development anyway.

On the other side, RMS and I mail about topics that we agree on all the time.

Also, see my previous post on the need to be able to make private and local sets of rules. In the end the user defined compiler optimizations are derived from the users source code, not really from the gcc itself.

You need to take the good with the bad.

abraham wrote: GPL(sic: read GCC) will get a documented and standardized middle end format when >someone create tools that use such a format, and convince RMS how useful they are (easiest to do if lots of people use them), and that they cannot be created without such a format. Or if nobody manages that, when GCC grow to a size that the development will be unable to continue without it.

The GCC is already at this stage. There is already attempts at a precompiled header format that represents this intermediate data in an barley readable format.

There are also the tree dumping routines already available.

The GCC is getting this middle format via the introspector project, even if the RMS does not like it.

RMS is going to have the final say, posted 28 Aug 2003 at 11:09 UTC by abraham » (Master)

The GCC steering commite is going to ask RMS for permission before GCC officially supports a public standardized middle end file format.

Ask? There is already a file format in place, posted 28 Aug 2003 at 12:23 UTC by mdupont » (Master)

Sorry to repeat myself, and that my writing is so bad :

I wrote : """Remember, more non-free software tools use the gcc -fdump-translation-unit function because it does not require patches to the compiler. More non-free software is supported indirectly by that than the introspector. Non free programs wont want to make a dependancy on a patched compiler, but the use the standard dumper of program representation provided in the official gcc release."""

It is bigger than gcc, posted 28 Aug 2003 at 14:39 UTC by mdupont » (Master)

Also, I would like to point out something else:

Even if this article is directed at the GCC, the issue here affects *all* the languages tools that are under an open source language.

Basically any tool that processes some language syntax and transforms it into another can be affected by the process of introspection.

That makes it a much larger issue than a policy of the gcc team.

mike

Its not about me , posted 28 Aug 2003 at 14:47 UTC by mdupont » (Master)

exa writes : i have no idea if mdupont got flamed unjustly. i'm just saying that might as well be the case.

This issues is older than me. I have chosen to make a point of it.

The flame are not directed at me directly, for the most part, but at anyone who gets on the "turf" of the the gcc team.

Read the links to the mails I posted to begin with.

My point is that the behaviour shown on the gcc list is exactly what RMS was critizing in his Manifesto. I think that people have forgotten all about the spirit of the revolution so late in the game.

mike

my reading of the situation, posted 28 Aug 2003 at 15:05 UTC by graydon » (Master)

there are three good reasons why you want an external representation of a compiler's IR:

  1. to help you debug your work on IR transformations, visualizing what you've done and connecting your work to a testsuite. this requires only that the front- and middle-ends (depending on your terminology) can dump out a representation.
  2. to help you write modular compiler parts which can be swapped in and out more easily than rebuilding the whole compiler. this requires not only a way to produce the external form but a way to read it back in to the backend.
  3. to permit fast-loading some expensive state of the compiler when it's invoked on files (such as #includes) it has seen before.

the FSF objects to IRs which can be read back in to the backend because the FSF wants to deny proprietary frontends any utility from GCC.

FSF-blessed GCC has acquired, instead, just enough support for points #1 and #3: debugging dumps of the various stages (high level trees, lowered trees, rtl) and the ability to save and restore the really expensive C/C++ front-end state (PCH). note that PCH saves and restores un-lowered trees; there is still a lot of front-end work which happens on the PCH-loaded files, just less i/o, parsing and allocating. it is probably incorrect to think of PCH as an easy way for a proprietary frontend to make use of GCC's backend.

other people have written things for GCC which support #2. you appear to be joining that group. to have your work become a standard part of most free software distributions, it will need to enter the FSF-blessed GCC version, and that will not happen until the FSF change their mind. many GCC developers think the FSF's pragmatic position is flawed, but have resigned themselves to a stalemate -- support for #1 and #3 alone -- which is sufficient for daily development.

When it comes to the crunch, one also has the right to fork gcc, posted 28 Aug 2003 at 15:15 UTC by tk » (Observer)

Seriously, I don't understand why there's this "have"/"have-not" mindset. If one feels so strongly, so passionately about this issue, one can always bite the bullet and fork gcc, no? Just put up any patches somewhere on the web, inform the world about them, and let the two gccs fight it out.

As for hate mail... it seems any free software project that's useful will tend to attract lots of hate mail anyway. If everyone responds to hate mail with hate posts, Advogato would've been flooded with flamacious rantings long ago.

The fork is here http://introspector.sf.net, posted 28 Aug 2003 at 15:21 UTC by mdupont » (Master)

<person>tk<person> wrote :

If one feels so strongly, so passionately about this issue, one can always bite the bullet and fork gcc, no?

yes, you are right. My fork has been hosted on http://introspector.sf.net for over 2 years now.

Hatemail, posted 28 Aug 2003 at 15:41 UTC by mdupont » (Master)

tk wrote As for hate mail... it seems any free software project that's useful will tend to attract lots of hate mail anyway. The issue is that the hate seems to be coming from project leaders, the people who are purporting to support freedom and friendship.

If everyone responds to hate mail with hate posts, Advogato would've been flooded with flamacious rantings long ago.

Ok, I see your critique: My post could possibly be seen as being hateful, I hope it was not. I will try and remain very cold about this matter.

The reason for posting this article was to get a public view on this issue, I think that we have been Advogato seems to be the only neutral grounds where we can discuss such tricky issues.

But you can see that the reference to hatemail was not from me at all, other people like GDR were getting hatemail.

mdupont. you have gone too far, posted 28 Aug 2003 at 22:00 UTC by atai » (Journeyer)

You cannot blame the GCC people in any way, as you have the code and you can do whatever modification you like on it. GPL does not mean free software authors need to do what you want, or support the features you want. You can "reverse engineer" the (clear-text) code to retrieve information you need. You can do it yourself, no?

Then stop whining.

Gone Too far? Yes, Maybe, posted 28 Aug 2003 at 22:31 UTC by mdupont » (Master)

Atai

Yes, maybe I have gone too far. I dont think I should have published this article in such a raw state, it needs more formatting and work.

I am working on doing just that, what you say, adding in the features I need.

The intent of the article was to point out what I see as wrong in the free software world today, but It does not seem to get any positive feedback.

I feel sorry for being so negative. On the other hand, I think that my criticisms are stil valid and that there is a real problem at hand. Maybe I can find a better way to deal with it, like just finishing my version and stop talking about it so much. It seems that I am pissing everyone off here at advogato, that is not my intention.

peace, mike

Your argument doesn't appear well-founded, posted 30 Aug 2003 at 23:23 UTC by Mysidia » (Journeyer)

The Introspector project seeks to grant users rights that the gcc developers seek to take away from the users. The right to freely access the compilers representation of your source code.

A threat to Free Software? The "GCC Introspector". No way.

I think that introspector is not a threat to Free Software. It may indeed make it easier for proprietary tools to benefit GCC; however, though it possibly could, this does not likely harm free software, in fact, it might help free software.

I dont think the introspector is a threat Free Software, it is a threat to the monopoly of the few elite on the GCC software,

This is prejudicial language. So far, you have provided no evidence that there is a monopoly or elite few: in fact, all evidence you present points to the contrary.

  • You have created a GNU introspector project. If they really had a monopoly, then this could not possibly exist (there is no elite few, unless you claim to be among the elite few).

  • GCC is free software, and anyone is free to modify, fork it, etc. (there is no monopoly).

It is a threat to the people who have forgotten about the spirit of GNU manifesto.

I do not see any indication that anyone forgot the spirit of the GNU manifesto. The GNU manifesto does not say anything about not ever writing hate mail, the GNU manifesto does not say that you have to design your software to suit the interests of people who want to tear your program apart in order to use its output for potentially proprietary purposes.

You could also say that Parrot or DotGnu or http://www.tunes.org is a threat, because they are providing a standard file format and language for manipulation of program representation by the user at a higher or lower level.

I'm satisfied merely that your program is Free Software, therefore, it cannot in general be a threat to Free Software.

You have just changed the subject and supported your most sensible argument without supporting your argument that the GNU manifesto was forgotten.

" The tree and rtl dumps are intended as debugging aids only. There is no need for them to be complete, they only need to include info we need for debugging. Since we never try to process them, we would never notice if they were incomplete."

My interpretation is that what you quote is merely a statement: "We don't need this"

"As for completing them, that is a potential problem. An FSF policy, intended to prevent people from subverting the GPL, prevents us from emitting debug/intermediate files that could be used by others to use proprietary code with gcc without linking to gcc. This is an inconvenience, but it is current FSF policy so we must respect it."

What a primitive and unproductive policy.

Again, you have used prejudicial language, without providing a strong argument for why the policy is primitive or unproductive, Why do you claim that this is FUD?

GCC developers have limited time, they have put a lot of work and energy into GCC, therefore, you need to provide a reason why they should waste their effort on work they don't feel important for GCC, if you think they should be compelled to develop the capabilities you want to impose upon them.

They are developing the GNU Compilers Collection, maybe they feel that the differences between a collection of discrete compilers and a Meta-Compiler system (A framework for plugging in external compiler tools) is out of the scope of their project.

They are afraid that if they add this capability, they will be providing companies who would like to profit by creating proprietary optimizers/other backends for GNU compilers an easy way to hook in, and their fears are probably justified, seeing the amount of proprietary software out there (IDES, Compilers, Designers, coding tools, etc).

In other words, they want to hinder proprietary software that they view as a threat to Free Software.

Developers are entitled to think this way if they wish: there is nothing scandolous.

The burden of proof is on you, to show that they act in bad faith towards Free Software principles, not for them to show that they support the ideals of Free Software, and you've not shown enough in your article to compel me to accept your argument that the GCC developers are corrupt.

I think that the influence of money and fame has corrupted many free software developers to try and protect their code from being documented and understood for the wrong reasons.

I expect examples of how the various GCC developers are receiving fame or money.

You appear to be making a generalization about many developers and assuming it applies to the GCC developers; however, few OSS software developers work FSF, and the FSF is a special case.

The introspector opens the software not up to non-free software, but to a whole new paradigma of metaprogramming, much like the www.tunes.org project.

I see no reference to the introspector on tunes.org. Maybe metaprogramming will be a new paradigm, maybe it won't. You've shown little.

More non-free software is supported indirectly by that than the introspector. Non free programs wont want to make a dependancy on a patched compiler, but the use the standard dumper of program representation provided in the official gcc release.

Hence their practices deter non-free programmers from taking advantage of GCC: they don't stop them, they slow them down, making it less attractive a practice.

So the GCC developers didn't add capabilities you wanted, and you made a fork.

That's great, but you don't need to demonize the GCC team or GNU to make the point that they're not looking as far into the future as you are.

New Advogato Features

New HTML Parser: The long-awaited libxml2 based HTML parser code is live. It needs further work but already handles most markup better than the original parser.

Keep up with the latest Advogato features by reading the Advogato status blog.

If you're a C programmer with some spare time, take a look at the mod_virgule project page and help us with one of the tasks on the ToDo list!

X
Share this page