Live data from Hacker News

Rust is tier-1 language at Microsoft

rustfoundation.org

411–420 of 521 posts

Re: Rust is tier-1 language at Microsoft

#411
post #405

Earlier quoted context omitted.

I'm totally disgusted that my Visual Studio 2022 instance uses 2 Gigabytes (!!) of RAM to run. What the hell is it doing that it's using that kind of memory? How about those morons solving that first before moving towards Rust. An IDE shouldn't have to use more than a 100MB of RAM tops. Anything more is inexcusable or needs a detailed explanation. BTW Firefox uses 1.1GB RAM so it's not immune from criticism either.

The complaint can be applied to any modern software, unfortunately.

You're right, though I'm not sure about all modern software quite to that extent. VS does have a reputation for being bloated. Even startup is not super fast IMO.

I checked just now. A recent Delphi with a project open: 175-200MB. Water (our IDE, I work at RemObjects) about 300MB.

Re: Rust is tier-1 language at Microsoft

#412
post #394

Earlier quoted context omitted.

Microsoft doesn’t use Visual Studio internally for many of its products such as Windows.

This is a shocking news to me. Can you elaborate with sources?

in Windows, some teams/people use it others don't. Historically it hasn't worked well with some of the internal build/test/etc stuff, that's mostly changed in recent years.

Re: Rust is tier-1 language at Microsoft

#413
post #361

Earlier quoted context omitted.

To add to this, I find that the delta between the amount of code and pain you get with good and bad abstractions is substantially higher in rust than other languages. It's alright to muddle through in Python or TS, but with Rust bad abstractions are punishing. LLMs are pretty bad at picking abstractions.

It's good that it's punishing when the abstraction are bad: then you notice. With Python or TS, as you say, you get less feedback.

That's true, although inconvenient for production code that needs to be delivered yesterday.

Sadly, agents don't mind generating gigatons of code instead of refactoring the abstractions.

Re: Rust is tier-1 language at Microsoft

#414

Earlier quoted context omitted.

> A headwind makes it harder to advance in the direction you're going nit: except in aviation

Surely a headwind makes an aircraft travel slower over the ground so it takes longer to reach the destination?

Correct. See e.g.:

https://www.businessinsider.com/3-aircraft-fly-new-york-to-l...

Re: Rust is tier-1 language at Microsoft

#415
post #405

Earlier quoted context omitted.

The complaint can be applied to any modern software, unfortunately.

You're right, though I'm not sure about all modern software quite to that extent. VS does have a reputation for being bloated. Even startup is not super fast IMO. I checked just now. A recent Delphi with a project open: 175-200MB. Water (our IDE, I work at RemObjects) about 300MB.

Sure, and the performance improvements across VS 2026 releases prove that it could be much better.

Re: Rust is tier-1 language at Microsoft

#416

Earlier quoted context omitted.

The recommendation is qualified for typical apps that do not have extreme performance or scale requirements. They use Java for many, many things. C++ is still indicated for systems that are optimizing for performance and scalability characteristics, since it intrinsically requires a lot of "unsafe" constructs.

In real world systems, Java can beat programs in compiled languages like C++ and Rust when it comes to throughput and even latency.

This is so untrue I still don't know how anyone can even claim this. When I run tests in Rust, the biggest portion of the time is spent compiling the test (lets say 3-4 seconds), then the tests conclude practically instantly, in less than half a second.

Meanwhile when I run tests on my JVM projects it can take 30 seconds just to start and the test execution is extremely slow too.

Even if you do manage to match the performance after warmup, you still have the issue that keeping the class files in RAM plus the JIT compilation state will cost more memory than simply running AOT compiled code. You simply cannot write processes that use a single digit MiB amount of memory on a JVM and getting down to 2 digits is theoretically possible but requires significant effort.

Once you get into the micro optimizations like the lack of mutable aliasing in Rust, there is significantly more potential for auto vectorization.

What you mean by "real world systems" is probably defined in such a narrow way that all the weaknesses of Java programs don't count anymore.

Re: Rust is tier-1 language at Microsoft

#417

Conversion of legacy nontrivial C++ code bases into Rust (or anything else for that matter) feels like it should be one of the "Millenium problems" for AGI. That and full self driving - including the nuances of gesturing to a human about who's going to reverse in a single lane in a snowstorm. But if 50% of code can be converted automatically to safe idiomatic Rust? Great. Doesn't sound too far fetched. But yes, there…

If we have AGI, it can just solve all the memory issues in the existing codebase instead of rewriting it all.

But then we'd still be left with a C or C++ codebase.

Re: Rust is tier-1 language at Microsoft

#418
post #360

Earlier quoted context omitted.

LLMs are unusually good at Rust; it's an optimization target. And the constraints provided by "successfully compile with the Rust compiler" make it work well for agent iteration. (I have mixed feelings about that, but empirically it holds true.)

Yes, I found these agents to be better at producing acceptable Rust than at producing acceptable Python code. In addition to the Rust compiler, you can also tell them to make clippy happy. Both in normal mode or if you are feeling nitpicky, you can also tell them to make clippy::pedantic happy.

Can you give an example where an LLM produced low quality Python code? Python is such a simple language. This seems hard to imagine. Plus, the amount of open source Python that LLMs can be trained upon is enormous.

Re: Rust is tier-1 language at Microsoft

#419

Earlier quoted context omitted.

Rust 1.0 was in 2015. Most of these languages you're thinking of out of the Handmade Community didn't even start development until around the point Rust 1.0 shipped. In theory Odin 2027, the 1.0 release of Bill's Odin language, is scheduled for, as the name suggests, early 2027. Zig does not have an announced 1.0 schedule, and who knows for the other two famous Handmade languages. From the rash of "C++ successor" lan…

As an embedded dev, it still feels a decade away, at least. Rust is perfectly usable as a lang to make a little module that links into your main project as a .a file. But, as the language for your whole embedded codebase? Forget it. I have a litany of complaints including Cargo fuckery, ecosystem neglect, lack of first-party support, excessive code size, bad documentation, and bad IR that wastes stack by creating cop…

    > But I work in a space where C and C++ have been the only option for the last 30 years with absolutely no production-ready alternative.
What "space"? My guess: HFT or HPC.

Re: Rust is tier-1 language at Microsoft

#420

Earlier quoted context omitted.

> C++ is still indicated for systems that are optimizing for performance The only evidence I've seen for this is that people with a vested interest in my believing this keep saying it is true. That's the exact same evidence I have for Trump having triumphed in Iran. Do better if you want me to believe you. > since it intrinsically requires a lot of "unsafe" constructs. This is an excellent reason to choose Rust. The…

I heard that unsafe rust is then unsafer than c++. I haven't learned rust yet, and I get that it's a tradeoff because the rest of the system can still be relied on. But how true is that first statement?

That statement is incorrect.

It's harder to write unsafe code in Rust. That doesn't make it "unsafer". What I mean is this, if you want to write unsafe code in Rust the C++ way, your entire program has to have unsafe markers everywhere. It's just as unsafe as C++ at that point.

But if you want to write unsafe code in Rust the Rust way, you run into a requirement that didn't exist in C or C++: The abstraction around the unsafe code must be safe for you to drop the unsafe marker. This created a unique category of abstractions that no other language has, so if you are working on unsafe code in Rust you are often a pioneer doing something never done before.

Post reply on HN