Really don't understand your objections!...
"" No, simply that free software vendors are unlikely to do it, because a compiler
intermediate representation of Adobe Whatever is not free software.""
Neither is the binary, even packed in RPM format, that Adobe does using GCC, and that distros
include in their repositorys.
"" Unfortunately, GCC is not better at single-machine optimization than many vendor compilers
(although it is getting better). So this really would be a temptation. (What's worse is the
temptation of hooking up a new frontend, and this has been tried: if GCC had been
partitionable as you suggest, we wouldn't have a free Objective C frontend today.) ""
Why not ?... is the Objective C frontend close source ?... Doesn't LLVM include an open source
Objective C/C++ frontend, and isn't LLVM partitioned and modular like you say ?
"" If GCC gets left behind technologically, nobody will want to stick their favourite
proprietary frontend on it.""
So its better that way, be left behind so that nobody will be tempted to abuse, is that it
?... my way or no way ?
But if that happens wouldn't it be a clear GPL violation ?... Why would anybody risk it, if
they can enjoy all the advantages of distributed development and the power that FOSS enjoys,
instead of law suits ?
Still i believe the biggest problem would be in the backend... But taking an example, isn't
AMD CTM/CAL open sourced ?... what is so terrible wrong about cooperation so that the lower
parts of that driver could be modular and treated by GCC the same way that Linux treats
firmware ?... (only an example because i don't know if CTM/CAL is really open sourced all the
way into the clear naked metal)
They might do exactly that, putting that lower level as firmware for HW, if they feel that
they are being accepted. And who says AMD, can say Intel or Nvidia...
"" (Anyway, it's not me you've got to convince; it's RMS. Getting RMS to change his mind when
he has reasons to think one thing is hard. Good luck. I'd not even bother trying until your
ideas are much more coherently presented.) ""
I don't have to convince nobody. Time is a cure for everything.
I'm sorry about the coherency anyway. But i think what i'm saying is that, is about time, to
GCC to open a new development tree!... yes, like in the time there was a stable and
development Linux tree. Certainly is not that easy, nor even magic or something like that...
but certainly would prove the power of GCC.
The current GCC tree can still be supported for many more years...
But what is the point of supporting archaic language front ends, that only 3 guys are using,
and one is 80 years old and is forgetting constantly where the return key is ?!...
That way would be close to impossible for GCC to evolve, there would be more PITA than
anything else, and tech forums would be full of "exposed" technical impediments and hurdles...
nobody would bother even to start... the new tree should tackle new problems and new ideas!...
Posted Apr 21, 2008 19:21 UTC (Mon) by nix (subscriber, #2304)
[Link]
Neither is the binary, even packed in RPM format, that Adobe does using
GCC, and that distros include in their repositorys.
Distros that don't ship non-free software don't ship that binary (assuming
you mean Flash). (Is it even redistributable? I thought most distros
shipped a script that downloaded it from Adobe.)
if GCC had been partitionable as you suggest, we wouldn't have a free
Objective C frontend today.)
Why not ?... is the Objective C frontend close source ?
No, but had it been easy to get it to emit something that GCC's backend
could have processed, the frontend would have been closed-source.
(This is a matter of historical record by this point. If I'm wrong, Joe
Buck can tell me I'm full of crap, if he's still reading.)
But if that happens wouldn't it be a clear GPL violation ?
If GCC emits a stable intermediate representation (as it would have to for
distros to usefully ship things in that form), and accepts that
representation for further processing, then having some closed-source
program emit it probably would not be a GPL violation: at least it
would be very hard to prove. This is why GCC doesn't, and won't, emit a
stable intermediate representation. (The representation used for link-time
optimizations is, as I understand it, by design not stable enough to be
usefully emittable by anything but GCC, and definitely not intended as a
medium to transport code between machines in.)
isn't AMD CTM/CAL open sourced ?... what is so terrible wrong about
cooperation so that the lower parts of that driver could be modular and
treated by GCC the same way that Linux treats firmware ?
This is already doable by implementing a GCC backend that accepts whatever
representation the CTM/CAL code generator accepts. It's just like
cross-compilation, in fact it is cross-compilation: exactly the
same mechanism is used to generate code for the Cell SPUs.
But it's not something that magically kicks in: there'd be a different
version of a package that had code like this in it, or perhaps a new glibc
hwcap and corresponding subdirectories searched by the dynamic linker for
shared libraries containing object files in the appropriate form.
I don't have to convince nobody. Time is a cure for everything.
If you want to get GCC to emit a stable intermediate representation, you
have to convince RMS :)