|
|
Subscribe / Log in / New account

An update on the GCC frontend for Rust

An update on the GCC frontend for Rust

Posted Apr 26, 2023 6:48 UTC (Wed) by taladar (subscriber, #68407)
Parent article: An update on the GCC frontend for Rust

So GCC 13 has not even been released yet but they plan to ship a version of the standard library that is already 20 releases outdated (so 120 weeks old) now with the GCC 14 release, presumably because their compiler can not handle some newer language constructs? Is there a particular reason to put that much effort into making a project that won't be able to compile anything that is still maintained on crates.io by the time it is released?


to post comments

An update on the GCC frontend for Rust

Posted Apr 26, 2023 8:11 UTC (Wed) by tialaramex (subscriber, #21167) [Link]

It seems unlikely that all the rugged stuff which has a very conservative Minimum Supported Rust Version will go away in the intervening months. And not everybody who writes a new major version with a higher MSRV abandons all older versions. For at least the foreseeable future, this frontend won't be the premier way to use Rust on mainstream systems, so hence the prioritisation of making core work. Core won't get you far building an RDBMS or a web server but you don't need much else to run the Rust program you wrote for a $1 micro controller with a couple of sensors and a relay and _that_ hardware probably doesn't have an LLVM target, so without GCC Rust is never coming.

Is it your understanding that the idea of this frontend is to freeze forever at Rust 1.49? Because that doesn't seem to be what its maintainers are saying, nor anybody else. Necessarily to get from A to B we must pass through intermediate points. "No Rust" to "Rust 1.49" seems like a lot of progress to me, taking a great many years for the Rust project so it's not a surprise that this team can't repeat it in a few weeks.

Old version

Posted Apr 26, 2023 13:47 UTC (Wed) by corbet (editor, #1) [Link] (6 responses)

You have to start somewhere; Rust is a moving target and if they try to keep up with it from the beginning they will never get to anything useful. The developers have said that they have more current Rust versions in mind, but they have a milestone to get to first.

Old version

Posted Apr 26, 2023 14:54 UTC (Wed) by cyperpunks (subscriber, #39406) [Link] (5 responses)

The integration seems to be under controll.
Rust will be here the next 50-100 years (much longer than C/C++).
It's better to use more time and do it right than rush a incomplete thing.

Old version

Posted Apr 26, 2023 17:44 UTC (Wed) by wtarreau (subscriber, #51152) [Link] (4 responses)

> Rust will be here the next 50-100 years (much longer than C/C++).

Funny how many developers have high expectations for their pet language. We've heard similar things for so many languages in the past. It's equally possible that in 30 years someone will say "what's this metal box?" and someone will respond "oh it's and old device that was called a computer, don't touch it it's full of rust" and then the language will wear its name marvelously :-)

On the opposite I predict that in the next decades, the most accessible languages will be swallowed by AI generators, not for the language but because they're addressing simple problems, and that over time it will be figured that generating code for high-level languages and fast moving targets is a pain, and that languages that impose lots of constraints do not bring any benefit anymore once you remove the human from the equation. You'll still keep a small percentage of human developers (basically the same that continue to use asm and low-level C for very specific stuff) and code generators will produce code for extremely permissive languages, possibly even C.

Old version

Posted Apr 26, 2023 18:06 UTC (Wed) by Wol (subscriber, #4433) [Link]

> On the opposite I predict that in the next decades, the most accessible languages will be swallowed by AI generators, not for the language but because they're addressing simple problems, and that over time it will be figured that generating code for high-level languages and fast moving targets is a pain, and that languages that impose lots of constraints do not bring any benefit anymore once you remove the human from the equation.

And how many times have we heard that :-) Was it the 1980s? Was it called "The Last One"? And given what we're hearing about AI, that it's biased, that it makes mistakes, that - basically - it's just as crap as humans are at actually getting things right, why do you think history is going to turn out different THIS time round, as opposed to all the previous times?

Assembly code replaced machine code. 3GLs replaced assembly. 4GLs tried to replace 3GLs and failed. AI is trying to replace 3GLs ... I fully expect it to fail ...

There's 3GLs and there's 3GLs. There's the "plenty of rope to hang yourself" ones - C, C++, Pick, ... There's the formally mathematical ones, Fortran, APL, SQL, ...

And at the end of the day, I think the biggest fly in the ointment is the Cretan Paradox, Godel's incompleteness theorem. The fact that logic is not logical is going to kill any attempt to write "The Last One".

Cheers,
Wol

Old version

Posted Apr 27, 2023 12:33 UTC (Thu) by tialaramex (subscriber, #21167) [Link]

So I agree that you shouldn't expect Rust to somehow be an important language in 100 years, a far greater distance in time than from when Grace Hopper suggested the machine should convert the program into machine code (rather than people doing that work) to today.

But Computation is much more fundamental than a particular programming language, or even a programming paradigm. Even if you're much more sceptical of Church-Turing than I am, it's a very important idea, likely up there with zero (the additive identity) in terms of not being a fad.

And I don't think the AI generators swallow up "accessible languages". Cobbling together stuff that maybe kinda sorta works in C++ is easier because "No, that's wrong" is rare, IFNDR means most likely your program compiles despite being nonsense, and it just has mysterious bugs which these generative models can't help you with beyond more haphazard changes that may introduce yet more mysterious bugs.

Old version

Posted Apr 28, 2023 6:17 UTC (Fri) by roc (subscriber, #30627) [Link] (1 responses)

On the contrary, AI code generators benefit from targeting languages with lots of constraints. Those languages move work from whoever's reviewing and debugging the code (humans, today) to whoever's writing the code (AI).

Old version

Posted May 2, 2023 19:26 UTC (Tue) by immibis (subscriber, #105511) [Link]

That depends on whether you expect the AI-generated code to work or not. In my experience, the code still won't work, but now the compiler will tell you instead of the runtime environment.


Copyright © 2025, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds