Live data from Hacker News

Chrome OS KVM - A component written in Rust

chromium.googlesource.com

61–70 of 109 posts

Re: Chrome OS KVM - A component written in Rust

#61
post #7

Is Rust an officially sanctioned language at Google?

Speaking as one of the folks in charge of languages: No

But we also don't get in the way of teams trying to experiment and see what will work for them. (otherwise, we'd never be able to know what languages to sanction)

Re: Chrome OS KVM - A component written in Rust

#62
post #4
post #2

The Fuchsia OS microkernel should be rewritten in Rust, too, especially if it's going to take another 5 years before we even see it in a commercial product. If Google wants to make a modern new OS that will help it avoid many of the existing security problems it needs to keep fixing with Android/Chrome OS right now, then it should do it right and avoid collecting a lot of "security debt" down the road because of unsa…

They should rewrite Go in Rust! That way we can avoid all this Go vs Rust discussions ;) Problem with your idea, is that low level kernel will use a lot of unsafe Rust, which will lose lot of benefits.

Well...maybe just the compiler? ;)

Re: Chrome OS KVM - A component written in Rust

#63
post #38
post #3

Earlier quoted context omitted.

You absolutely right! You can imagine what Google can do with his resources when even one programmer writes his own OS, file system, etc on Rust - https://github.com/redox-os/ !

What is the connection between Google and Redox? I didn’t understand you to be honest.

I think he meant that if one guy developed Redox in his spare time, surely it wouldn't be too hard for a Google team to "simply" rewrite Fuchsia in Rust.

Re: Chrome OS KVM - A component written in Rust

#65
post #45
post #33

Earlier quoted context omitted.

Go confirmed for me what I suspected: which is that I hate hate hate the futures style of async programming. I'm on the lookout for channels and green-threads in Rust (so I can basically write borrow-checked Go-style code in Rust).

Channels are there but you have to use an API for them. Green threads were removed a few years ago, though there are implementations of co-routines, etc. as crates. Rust is getting an unstable form of async and await as macros/syntax extensions, and there are RFCs discussing adding them to the language in some form. This would still be a wrapper for futures, but a more ergonomic way of using them.

I'm not entirely convinced that async annotations can't be completely elided. I think that any call stack that touches a sync/async API could have the decision of which to use bubbled up to a top level function via generics.

Re: Chrome OS KVM - A component written in Rust

#67

Isn't stuff like that exactly counteracting Rusts raison d'etre? > // This is safe; nothing else will use or hold onto the raw sock fd. > Ok(unsafe { net::UdpSocket::from_raw_fd(sock) }) https://chromium.googlesource.com/chromiumos/platform/crosvm...

Nope, this is exactly what low-level Rust code should look like.

Re: Chrome OS KVM - A component written in Rust

#69
post #7

Is Rust an officially sanctioned language at Google?

Speaking as one of the folks in charge of languages: No But we also don't get in the way of teams trying to experiment and see what will work for them. (otherwise, we'd never be able to know what languages to sanction)

I’m on my company’s language group. Do you have any more info on what boundaries are setup for experimental usage of a language? What does the sanctioned/unsanctioned distinction provide if teams can experiment freely?
Post reply on HN