3 ms·
>Does it not? It's the same issue around no-stdlib, stricter sense of allocated memory, etc. No, because a general purpose OS has to do that and effectively, s
by Sir_Cmpwn 9y ago
>Does it not? It's the same issue around no-stdlib, stricter sense of allocated memory, etc.
No, because a general purpose OS has to do that and effectively, securely, and performantly manage userspace access to those resources (including hardware resources, which you didn't mention). It also has to facilitate secure and performant interactions between userspace programs. Beyond kernel hacking you also have to do some serious work on userspace design, especially if you have a microkernel. This is an entirely different domain than embedded programming usually deals with.
>Yes, this is an age thing. I'm sure in it's infancy, C was gaining features and changing rapidly. For example, C changed significantly early on it's syntax from K&R to Ansi. C compilers have to support that.
Sure, but that doesn't make my argument less compelling. Rust may follow the same path but that's years out and IMO they've already gone too far.
>The language does have a lot of features that make it into the nightly branch, but those take a long time to bake until they're promoted to stable.
But not before the ecosystem runs with it and ships packages that require you to use a nightly compiler to be productive, in my experience. Not to mention that several projects still build the compiler themselves!
I have some opinions about projects like Redox but I'm out of time.
- steveklabnik 9y agoWhich projects still build the compiler?
- Sir_Cmpwn 9y agoServo comes to mind first.
- steveklabnik 9y agoIt downloads a specific version of the compiler, it does not build a compiler. Specifically, whatever one is defined in this file: https://github.com/servo/servo/blob/master/rust-toolchain https://github.com/servo/servo/blob/master/rust-toolchain
- Sir_Cmpwn 9y agoOkay, that doesn't really change anything.