Live data from Hacker News

Rust is tier-1 language at Microsoft

rustfoundation.org

491–500 of 521 posts

Re: Rust is tier-1 language at Microsoft

#491

Earlier quoted context omitted.

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.

Given the hypothetical presupposes AGI, so what? We wouldn't be the ones reading or maintaining it.

Re: Rust is tier-1 language at Microsoft

#492

Earlier quoted context omitted.

Rapid prototyping is almost a meme at this point. If you are hand rolling code old school, you will waste more time shoehorning JavaScript and python semantics into rust code and end up with worse quality that takes more time rather than writing it from rust. People did this a lot when rust was not as popular but there are plenty of very good rust programmers now who understand the language and can make programs that…

> Rapid prototyping is almost a meme at this point > People did this a lot when rust was not as popular but there are plenty of very good rust programmers now who understand the language and can make programs that are significantly more performance for a marginal development cost. Why isn't the game industry moving to it then? Bc it just cannot compete at volubility with C++, among other things. Yes, you can have ski…

>Also, there are certain very tweaked data structures such as Boost.MultiIndex or linked lists with intrusive hooks and others that are not easy at all in Rust and they do have value in some situations. I had some of this in some telecommunication systems before.

An interesting point here as others have already stated. If you are working inside of a game engine, then all of these primitives and structures are already provided for you.

Embark studios are a huge rust supported and have released two very large games in the past 4 years, and they have tons and tons of big rust projects, tooling but no game written in rust for the reasons other people stated. There is no game engine toolchain like UE5

https://embark.dev/

Re: Rust is tier-1 language at Microsoft

#493
post #475

I hope announcements like this show that Rust is not a fledgling little language that moves fast and breaks things anymore. It's a mature, serious competitor to well established languages like C++ and C#. This is particularly important when trying to compare the experience of using Rust to other languages in the "better C/C++" space like Zig and Odin -- these are much newer and have more rough edges than Rust.

Get back to me when Rust has a stable ABI and can produce dynamically linked binaries.

Rust supports opting into the C ABI

Re: Rust is tier-1 language at Microsoft

#495

Earlier quoted context omitted.

> From the perspective of high level application development, I can't see a technical use case for a language other than Rust. Bit of a red flag if you really can't.

I know, haha. It's a bit of an absolute statement but as far as all of the features I look for in the context of creating scalable and maintainable software (especially in the age of agent-assisted coding) - Rust has been the most productive, least frustrating language I have worked with. It's basically TypeScript but runtime exceptions are impossible. If it compiles, it works - so the _only_ thing you worry about is…

This is giving real "if all you have is a hammer" vibes.

I also have years of experience with Rust, but I moved off Rust a few years back simply because I'm sick of the anemic stdlib and lack of mature ecosystem around anything even one inch off the beaten path. Cargo is a shitshow and Rust forces you into an npm-like experience for a whole bunch of functionality that ought to be included in the box. You're juggling libraries with versions like 0.1.2 of which there's seven, none of which are feature complete and five of which are semi abandoned. Then you run into the orphan rule trying to fix or extend any of them.

I kind of think some other language will come along, take the borrow checker, take all the type conveniences that Rust stole from OCaml that make Rust so nice, glue it all to a Python/Go/dotnet style fat stdlib, complete with an optional GC for all the things that don't actually need bare metal performance (just stick an arena in stdlib), and Rust will feel like a clunker by comparison.

Re: Rust is tier-1 language at Microsoft

#496

Earlier quoted context omitted.

As mentioned: gaming, most of enterprise dev, graphics/gpu/cad, desktop, certain classes of embedded. Broadly speaking, outside of hacker/web/creative culture, the default is windows. Regardless of how evil gigantic companies can be, or what the ideal world should look like: from a pure usability perspective, windows is top of the list. If I got 5$ every time a linux/mac enthousiasts has to tell me they just cannot r…

No disagreements on things not working right on Mac/Linux, it's definitely a frustration! I would argue against the idea that it's the default for most enterprise dev. What you refer to as creative/web culture I would refer to as a newer generation of enterprise dev written in (I know) JS, TS, Electron etc. There is a lot of cross platform stuff out there, at least for clients, and Linux has taken up a lot of ground…

True, I hate windows like most people. I just also hate being unrealistic about it. Good thing about AI is you no longer really have to care about really understanding the OS, unless you are an admin.

Re: Rust is tier-1 language at Microsoft

#497

Earlier quoted context omitted.

From a software design standpoint, it certainly takes some adjustment going from OOP to the compositional architecture and structural trait system used by Rust, but it's not that big a shift. The biggest downsides are the poor standard library that ships with Rust and the non prescriptive project structure which puts too much authority on the writer to figure out. The biggest wins are that runtime exceptions and conc…

We've seen several anecdotes where JIT languages (e.g. Java) outperform Rust in throughput and latency in long-running server programs.

It is mathematically impossible for a Java program to be faster than a well optimized Rust program, so long as the JVM exists and requires non-zero resources to run (to say nothing of GC etc).

This isn't me glazing Rust, this is just the boring observation that a VM language is necessarily going to be outperformed by a language without a VM. VMs have good attributes, but they are never zero cost.

Re: Rust is tier-1 language at Microsoft

#498

Earlier quoted context omitted.

Yeah I'd written some rust ~ 10 years ago when the language was very different and that led me to believe that it was a 'great within it's niche' sort of thing for a long time, but after spending the last couple of years with it as a daily driver I think it's a pretty great general-purpose language. The one really common gotcha with rust is that when trying to write concurrent code, newbies tend to throw Arc > goo ar…

jdcasale you are right that Arc > is a code smell but I would take that a bit further that locking immutable data is even more of a smell. The real bad guy in this case is the RwLock not Arc. For anything that you hydrated once and never mutate you do not need the RwLock. Arc just clones the pointer so it is safe to share for concurrent reads so something like Arc is fine and if you need initialization locking then L…

The overuse of the phrase "code smell" is a skill level smell. Too much time spent cargo culting code elegance, not enough time spent in the byte mines.

Re: Rust is tier-1 language at Microsoft

#499
post #493
post #475

Earlier quoted context omitted.

Get back to me when Rust has a stable ABI and can produce dynamically linked binaries.

Rust supports opting into the C ABI

So does any other language which wants to be useful; being able to call C functions is table stakes for a systems programming language. But Rust itself can still only generate static binaries, because Rust doesn’t have a stable ABI.

Re: Rust is tier-1 language at Microsoft

#500
post #76

With certain rough edges like complex traits and Async aside, rust is an S-tier lang in several domains. Of interest: - Embedded - PC desktop applications - Computationally-intense scientific programming. (Chem, structural bio etc) - OSes, drivers etc - High-performance tasks in general. CPU, GPU, etc. It's not a memory-safety one-trick pony; it's a well-rounded lang which has learned from its predecessors.

Oh, its good at doing desktop applications these days? Which GUI libraries are good these days? Some native win32 binding? Are there good equivalents for Qt? I'm interested in getting back to native application development; the job is on Electron right now and it's… meh.

EGUI.

Note: You ask different people, and they will all have their favorite tool kits. GPUI is very promising but new. There are a pile of others people will vouch for like Druid, Tauri (Electron-like but faster?) Slint (As the sibling poster pointed out), Iced, Qt bindings etc. I am not sure about native Windows etc bindings: I recognize that OS-native things like that are the most performant, but for me it's worth it to make my programs cross-platform and not worry about OS-specific things.

Note: EGUI is an immediate mode GUI, which isn't for all applications. But it has never limited me, and have written some complex UIs with integrated 3D etc.

Post reply on HN