Live data from Hacker News

GCC Rust Approved by GCC Steering Committee

gcc.gnu.org

191–200 of 300 posts

Re: GCC Rust Approved by GCC Steering Committee

#191
post #174

Earlier quoted context omitted.

Right to repair has been all over the news, including mainstream news, and least in tech circles it's fairly well known. And while there are undoubtable many people who don't know what it means, the basic idea is quite obvious from just those three words: "if I bought something, I should have the ability to repair it". The problem is that merely right to repair doesn't cover all of Free Software so it will never catc…

Do many/most people really think they should have the ability to repair it? I'm not sure because they keep buying products where it's expressly not possible to repair it yourself or by a competent 3rd party. So I'm not really sure it has any more meaning than free software means no cost rather than "no one and everyone owns the software".

Before micro-USB every cell phone came with its own charging connector plug and everyone and their mother was complaining about it, but people still bought them because there wasn't all that much of a choice, or the sacrifices you had to make in other areas were just too large.

Price, functionality, availability, etc. all factor in. And the tricky thing with repairs is that it's a very "non-obvious" feature.

Re: GCC Rust Approved by GCC Steering Committee

#192

Earlier quoted context omitted.

> free as in speech, not beer I can never remember which way around this is. I think the "beer" is supposed to be free in the monetary sense and "speech" is supposed to be free in the rights/liberty sense, but the analogy doesn't actually convey this: - Speech is normally both monetarily free and (in certain places) a right - Beer is normally neither monetarily free or a right. But may make you "feel" free, which is…

It’s not as complex as you’re choosing to make it. When someone tells you, “There’s free beer at Oktoberfest,” is your first thought that the beer has no monetary cost, or that the beer is unencumbered by particular legal restrictions? Now someone tells you, “There’s free speech at Oktoberfest.” Is your first thought that there’s no monetary cost to expression, or that the expression is unencumbered by particular leg…

what is free software?

Re: GCC Rust Approved by GCC Steering Committee

#193

Earlier quoted context omitted.

> free software it seems like this term is misunderstood in English to mean "no money" .. perhaps "Libre Software" is a better starting description here

"Libre" is not a word in the English language. Pretty sure that's not going to be clearer.

feature not a bug? asking a question is the first step to a new understanding

Re: GCC Rust Approved by GCC Steering Committee

#194
post #63

Earlier quoted context omitted.

The term has been around for decades now, and seems to be fairly well understood in the tech world. It doesn't take much to say "free as in speech, not beer" to the few people left who need to understand it.

I'm not so sure about that; I've certainly met plenty of people who did not understand it. HN is not representative of the wider tech community. And "free as in speech, not beer" actually does little to clarify it IMHO; it only works well if you're already familiar with the concept, but if you're not it only adds to the confusion (free speech is about the freedom to say what you want, so free software is about being…

> HN is not representative of the wider tech community.

But we are on HN right now...

Re: GCC Rust Approved by GCC Steering Committee

#195

What is the benefit of having multiple compilers for programming languages? Is there a scenario where a GCC compiled rust program would do something that an LLVM one can't do? Doesn't this cause fragmentation in the rust ecosystem? P.S.:I understand that people can work on any project they want. And I don't have the right to tell them not to. I'm just curious about the technical reasons for having multiple compilers.

In addition to what others have said, since there is a plan to introduce Rust kernel modules into the Linux kernel, being able to compile with GCC helps avoid dependence on another toolchain, which was something I've seen mentioned as a concern w.r.t. Rust in the kernel.

To be clear, while it's a concern some people on the internet have expressed, it's not an actual problem for landing the current work to get Rust in as a framework for writing drivers.

Re: GCC Rust Approved by GCC Steering Committee

#196

Earlier quoted context omitted.

1. GCC has more backends than LLVM. 2. Competition is good in general. 3. I expect this will trigger inconsistencies between GCC and rustc; because Rust doesn't really have a specification. Which will force both parties to discuss and solve them.

Being on gcc, a long-lived platform, also helps ensure the survival of the language even if development of the current compiler (or LLVM) dies or withers.

GCC support of Objective-C is very very poor.

Re: GCC Rust Approved by GCC Steering Committee

#197
post #8

This is great! Gcc support opens up more platforms, more targets, and the opportunity to more easily integrate with the various common embedded toolchains that are built around gcc. And it's free software, for those that care, this matters.

The rust compiler can already use GCC as a backend. So I don't see how this opens more platforms than that.

Because that doesn't use the GCC frontend interface, requiring build tools and embedded toolchains to be modified to understand the rust compiler interface. By using GCC it's just another language that the existing toolchain can understand.

Re: GCC Rust Approved by GCC Steering Committee

#198
post #82

Earlier quoted context omitted.

A question for curiosity since I don't know much about llvm and specifically the architecture. Does LLVM not support architectures because there is some barrier, or a higher barrier than GCC? And GCC makes it easier to support some architectures or is it just as easy to add the support to LLVM but no one does it because GCC already supports it?

The vendor sometimes does this and GCC is much more standard in the embedded space. And crucially, it's required to be open source. For example, for arm-none-eabi, ARM provides a GCC toolchain ( https://developer.arm.com/Tools%20and%20Software/GNU%20Toolc... ) but makes you purchase the LLVM-based one ( https://developer.arm.com/Tools%20and%20Software/Arm%20Compi... ). Now I'm fairly certain there's an open-source wa…

Where's the "purchase" part there? I see a download link, and it seemed to download the toolchain? I don't have any projects lying around to actually try it out, but it looks complete?

I briefly looked at the license and it seems that if you're getting it for free, then its all good, you just get no support.

(I only write Rust on ARM and so am unfamiliar with the various toolchains they offer, honestly.)

Re: GCC Rust Approved by GCC Steering Committee

#199
I have mixed feelings about the idea of a GCC frontend for Rust.

On one hand, having frontend diversity for a language helps bring new people into the language; think of the groups who can't use Rust because it doesn't support certain targets or can't integrate with their existing toolchain. There is a lot of talent that could be brought into Rust just by virtue of them being able to be included and the less barriers of entry, the better.

But on the other hand, I don't want to have to think of implementation specific behaviors, bugs, quirks, et cetera. Having an ecosystem built with thousands of people wrestling with that problem seems like a recipe for buggy software and burnout. People say that a spec would help with this aspect but I'm sceptical; a spec doesn't prevent divergence from happening, it just gives you a frame of reference for what is correct. You also don't need multiple implementations to have a spec either!

I fear that the way this is going to pan out is that we'll have multiple frontends for Rust, but the vast majority of engineers using the language will only ever think about "true" Rust: the current mainstream implementation. Issues in crates that primarily affect "alternative" Rusts will go unacknowledged, be tossed out, or have hacky patch jobs. We'll end up with either a) two separate, but high quality, ecosystems or b) one shared, lower quality ecosystem that is constantly fighting itself. I hold Rust in really high regard and it's my favorite language at the moment, so this thought is scary to me.

Though, there are a lot of smart people involved so maybe it doesn't have to be so doom and gloom. A couple of years ago I thought that cross-platform software was really messy and hard to get right but languages like Rust have the proper language features to make things like this much easier (though not perfect!). It could be that the emergence of multiple frontends could necessitate features and tooling for the Rust itself which makes all of that I said a non-issue. Maybe. Hopefully.

Re: GCC Rust Approved by GCC Steering Committee

#200

Earlier quoted context omitted.

Does it? GCC's Java frontend died and is no longer shipped, they need maintainers like any other compiler.

GCJ is no more? It was being used within recent memory for things, i thought. I am out of the loop though, so if this is true, that's interesting and a bit weird.

Since 2009 actually.

Most contributors eventually moved into OpenJDK after it became available.

GCC folks left it around for a couple of years, because GCJ unit tests exercised parts of the compiler no one else did.

Eventually they decided it wasn't worth that maintenance cost to keep it around only for that purpose.

Post reply on HN