4 ms·
> Has the Rust panic() issue been resolved? It's my understanding the Rust for Linux project has integrated custom fallible allocations (so, works for them, se
by mustache_kimono 4y ago
> Has the Rust panic() issue been resolved?
It's my understanding the Rust for Linux project has integrated custom fallible allocations (so, works for them, see: https://github.com/Rust-for-Linux/linux/pull/402 https://github.com/Rust-for-Linux/linux/pull/402), but the fallible allocator API is not yet stabilized for Rust itself (see: https://github.com/Rust-for-Linux/linux/issues/2 https://github.com/Rust-for-Linux/linux/issues/2).
> I would expect a language in the kernel I run to at least have a stable specification or standard.
I hear this occasionally, and I guess I'd like to better understand it. If a document existed that was called "The Rust Specification", why/how would that be significant for kernel development?
- lionkor 4y agoIf there is a specification, one can write code for a version of that specification, and later down the line someone can build a compiler for it according to the specification - youre implementation-independent. Seems important to me.
- mustache_kimono 4y ago> Seems important to me. Maybe I'm dense, but why is this necessary, or specifically helpful, re: kernel development? As I understand it, the Linux kernel doesn't assiduously follow the C spec (it uses many GNU specific extensions). And C spec itself is often not fully implemented on many platforms (see C11 Annex K). If the answer is "It could break", well, Rust probably does more to prevent breakage than any language I know. Definitely more than the C spec ever has. Would it be nice for the devs to take an extended holiday to write a mind-numbing technical document for the benefit of 2-3 teams working on alternative compilers? Maybe? But, also, maybe not.
- steveklabnik 4y agoLinus also famously hates parts of the C spec and so actively does not follow it: https://news.ycombinator.com/item?id=17262643 https://news.ycombinator.com/item?id=17262643