Rust GCC backend: Why and how
71–80 of 138 posts
Re: Rust GCC backend: Why and how
#72Earlier quoted context omitted.
Isn't that very much intentional on the part of GCC?
It is intentional to avoid non-free projects from building on top of gcc components. I am not familiar enough with gcc to know how it impacts out-of-tree free projects or internal development. The decision was taken a long time ago, it may be worth revisiting it.
Re: Rust GCC backend: Why and how
#73Earlier quoted context omitted.
Why? When your goal is to have free software, having non-free software with better architecture won't suit you.
This argument has been had thousands of times across thousands of forums and mailing lists in the preceding decades and we're unlikely to settle it here on the N + 1th iteration, but the short version of my own argument is that the entire point of Free Software is to allow end users to modify the software in the ways it serves them best. That's how it got started in the first place (see the origin story about Stallma…
Yes?
> completely counter to his own supposed raison d'etre
I can't follow your argument. You said yourself, that his point is the freedom of the *end user*, not the compiler vendor. He has no leverage on the random middle man between him and the end user other than adjusting his release conditions (aka. license).
Re: Rust GCC backend: Why and how
#74Earlier quoted context omitted.
Why? When your goal is to have free software, having non-free software with better architecture won't suit you.
I would describe this more as "trying to prevent others from having non-free software if they wish to", which is a lot more questionable imo.
I happen to believe that barriers to collaboration results in less software for everybody. I look at Clang and GCC and come away thinking that Clang is the better model because it results in more innovation and more software that I can enjoy. Others wonder why I am so naive and say that collaborating on Clang is only for corporate shills and apologists.
You can have whatever opinion you want. I do not care about the politics. I just want more Open Source software. I mean, so do the others guys I imagine but they don’t always seem to fact check their theories. We disagree about which model results in more software I can use.
Re: Rust GCC backend: Why and how
#75Earlier quoted context omitted.
I would describe this more as "trying to prevent others from having non-free software if they wish to", which is a lot more questionable imo.
Some in the Free Software community do not believe that making it harder to collaborate will reduce the amount of software created. For them, you are going to get the software and the choice is just “free” or not. And they imagine that permissively license code bases get “taken” and so copyleft licenses result in more code for “the community”. I happen to believe that barriers to collaboration results in less softwar…
I just think, that:
> I happen to believe that barriers to collaboration results in less software for everybody.
is not a bad thing. There is absolutely no lack of supply for software. The "market" is flooded with software and most of it is shit. https://en.wikipedia.org/wiki/Sturgeon%27s_law
Re: Rust GCC backend: Why and how
#76Earlier quoted context omitted.
This argument has been had thousands of times across thousands of forums and mailing lists in the preceding decades and we're unlikely to settle it here on the N + 1th iteration, but the short version of my own argument is that the entire point of Free Software is to allow end users to modify the software in the ways it serves them best. That's how it got started in the first place (see the origin story about Stallma…
> the entire point of Free Software is to allow end users to modify the software in the ways it serves them best Yes? > completely counter to his own supposed raison d'etre I can't follow your argument. You said yourself, that his point is the freedom of the *end user* , not the compiler vendor. He has no leverage on the random middle man between him and the end user other than adjusting his release conditions (aka.…
Whatever his motivations were, I don't see a practical difference between "making the code deliberately bad to prevent a user from modifying it" and something like Tivoization enforced by code signing. Either way, I as a gcc user can't modify the code if I find it unfit for purpose.
Re: Rust GCC backend: Why and how
#77> On that note: GCC doesn't provide a nice library to give access to its internals (unlike LLVM). So we have to use libgccjit which, unlike the "jit" ("just in time", meaning compiling sub-parts of the code on the fly, only when needed for performance reasons and often used in script languages like Javascript) part in its name implies, can be used as "aot" ("ahead of time", meaning you compile everything at once, all…
To use an illustrative (but inevitably flawed) metaphor: Using libgccjit for this is a bit like networking two computers via the MIDI protocol. The MIDI protocol is pretty good for what it is designed for, and you can make it work for actual real networking, but the connections will be clunky, unergonomic, and will be missing useful features that you really want in a networking protocol.
Re: Rust GCC backend: Why and how
#78Earlier quoted context omitted.
> I don’t like the language and I do not want to see it continue to propagate through the software I use and want to control/edit/customize. This is how I feel about C/C++; I find Rust a lot easier to reason about, modify, and test, so I'm always happy to see that something I'm interested in is written in Rust (or, to a far lesser extent, golang). > So for me the less entrenched Rust remains the more ability I keep t…
>> I don’t like the language and I do not want to see it continue to propagate through the software I use and want to control/edit/customize. > This is how I feel about C/C++; I find Rust a lot easier to reason about, modify, and test, so I'm always happy to see that something I'm interested in is written in Rust (or, to a far lesser extent, golang). You have to do better than "NO U" on this. The comparison to C/C++…
Keywords right there. People who don’t-like-Rust are the most coddled anti-PL group. To the extent that they can just say: I really need to speak my mind here that I just don’t like it. End of story.
I don’t think anyone else feels entitled to complain about exactly nothing. I complain about languages. In the appropriate context. When it is relevant or germane to the topic.
A “genius” Rust program running on a supercomputer solving cancer would either get a golf-clap (“I don’t like Rust, but”) or cries that this means that the contagion is irreversibly spreading to their local supercomputer cluster.
One thing is people who work on projects where they would have to be burdened by at least (even if they don’t write it themselves) building Rust. That’s practical complaining, if that makes sense. Here people are whining about it entrenching itself in muh OSS.
Re: Rust GCC backend: Why and how
#79Earlier quoted context omitted.
To use an illustrative (but inevitably flawed) metaphor: Using libgccjit for this is a bit like networking two computers via the MIDI protocol. The MIDI protocol is pretty good for what it is designed for, and you can make it work for actual real networking, but the connections will be clunky, unergonomic, and will be missing useful features that you really want in a networking protocol.
Oh come on, SLIP over MIDI is tried and true.
Googling “slip over midi” gives a lot of fashion blogging about mini dresses and slips that one wears under them, so I’m not quite sure what you mean.
But if you mean “midi over slip”, then that is the inverse case from what I am suggesting. Midi over slip (and slip could be any tcpip substrate, such as ethernet) has midi messages as the payload, carried via tcpip.
I’m talking about using midi messages to carry tcpip payloads. You can absolutely do it, but it isn’t really what the protocol is designed for.
Re: Rust GCC backend: Why and how
#80Earlier quoted context omitted.
Some in the Free Software community do not believe that making it harder to collaborate will reduce the amount of software created. For them, you are going to get the software and the choice is just “free” or not. And they imagine that permissively license code bases get “taken” and so copyleft licenses result in more code for “the community”. I happen to believe that barriers to collaboration results in less softwar…
I am maybe part of the crowd you describe, but I don't disagree so much with you. I just think, that: > I happen to believe that barriers to collaboration results in less software for everybody. is not a bad thing. There is absolutely no lack of supply for software. The "market" is flooded with software and most of it is shit. https://en.wikipedia.org/wiki/Sturgeon%27s_law
I am not as much on the bandwagon for “there is no lack of supply for software”.
I think more software is good and the more software there is, the more good software there will be. At least, big picture.
I am ok with there being a lot of bad software I do not use just like I am ok with companies building products with Open Source. I just want more software I can use. And, if I create Open Source myself, I just want it to get used.