5 ms·
As someone not at all involved in Rust but interested in its progress, I think this is an important milestone to hit. In most orgs that I've been a part of, no
by busterarm 6y ago
As someone not at all involved in Rust but interested in its progress, I think this is an important milestone to hit.
In most orgs that I've been a part of, no language tends to meet the standard for consideration until it has been the core of at least one very large public software project.
A functioning GUI toolkit is likely a major barrier to that happening in Rust.
Until then, we know it exists but doesn't pass inspection for inclusion. So far the largest things we know of built with it are Servo's CSS engine and the NPM authentication service.
- steveklabnik 6y ago> In most orgs that I've been a part of, no language tends to meet the standard for consideration until it has been the core of at least one very large public software project. > So far the largest things we know of built with it are Servo's CSS engine and the NPM authentication service. Here are some others, for your consideration: * Dropbox's storage layer: https://dropbox.tech/infrastructure/extending-magic-pocket-innovation-with-the-first-petabyte-scale-smr-drive-deployment https://dropbox.tech/infrastructure/extending-magic-pocket-i... * CrosVM is an important part of ChromeOS https://chromium.googlesource.com/chromiumos/platform/crosvm/+/837b59f2d97b005ef84ac36efa97530c1bbf2a79/README.md https://chromium.googlesource.com/chromiumos/platform/crosvm... * Firecracker is the underlying tech of AWS Lambda and Fargate https://firecracker-microvm.github.io/ https://firecracker-microvm.github.io/ * More coming from Amazon I don't have the ability to easily cite just yet, I hope the re:Invent recordings go up somewhere sometime soon * "EdenSCM is the primary source control system used at Facebook,": https://github.com/facebookexperimental/eden https://github.com/facebookexperimental/eden There's a bunch of other stuff too, of course. Apple has been hiring, but I don't think their usage is public yet. Microsoft is hiring rustc hackers, and has some other stuff going on. And tons of other stuff that may count as "large" depending on how you define it.
- losvedir 6y agoWhat about Cloudflare? I thought they were really using a lot of rust, but maybe that was just because you joined for a time!
- steveklabnik 6y agoYou know, I was like "I know I am forgetting some major stuff" but couldn't put my finger on it, and yes, that is absolutely one of the things I've been forgetting. They are using quite a bit of Rust: * The 1.1.1.1 app's core is in Rust (this is one of the most prominent, if not most prominent, usages of Rust on iOS/Android) * Their HTTP/3 implementation is in Rust (I am very excited about this one, personally) * Workers has multiple parts; the CLI, HTMLRewriter... (This was related to the team I worked on, so I have a soft spot for it) ... and probably more that I'm forgetting. Honestly, it's really nice that there's so much Rust these days that it's easy to forget all of the cool stuff. And there's a lot that I'd consider meaningful that may or may not be "large," so I was shooting for only the largest. 1Password and Discord are huge for me, but maybe others don't think so.
- praveenperera 6y agoAlso Wirefilter for their Firewall Rules Source: https://blog.cloudflare.com/how-we-made-firewall-rules/ https://blog.cloudflare.com/how-we-made-firewall-rules/
- deleted 6y ago[deleted]
- est31 6y agoDon't forget fuchsia. It has over 800k lines of Rust (not counting dependencies, then it has >2M): https://i.imgur.com/gknVmYk.png https://i.imgur.com/gknVmYk.png
- busterarm 6y agoIts kernel is still predominantly C++ & Assembly.
- steveklabnik 6y ago... but since Fuchsia is totally-not-a-microkernel, a lot of stuff that would be in the kernel in, say, Linux, is not in the kernel in Fuchsia.
- pjmlp 6y agoTrue, but outside of the kernel the official SDK languages are C++, Go and Dart.
- est31 6y agoThe "kernel" of fuchsia is a microkernel, but when one talks about the Rust-free core of fuchsia, people usually mean the "zircon" component that encompasses both the microkernel as well as core utilities. Around this zircon component they built a set of higher level components. They'd still be considered important parts of an operating system. E.g. things like a bluetooth stack. The SDK you mention is for end user programs targetting the OS.
- steveklabnik 6y agoYou're conflating two different things; outside the kernel, but inside of the OS, you can use Rust. They are using an increasing amount of it, as the other comment shows. What you're talking about is the SDK for people writing applications to run on top of Fuchsia.
- mbStavola 6y ago