Rust isn’t really OOP like C#, Java or C++ - it has structs with functions that you could consider an “object” but there is no inheritance. Instead Rust uses traits which are a little bit like interfaces in some languages.
The way the kernel is using Rust at the moment is to produce safe bindings for modules to be written in Rust, i.e. you can create a module in Rust source which will be correctly loaded up, the code is safe by default and will have access to kernel services via bindings. I expect over time that more of the kernel will become Rust, but the biggest impediment right now is Rust relies on LLVM and LLVM only supports a subset of targets that a kernel could potentially support with another compiler like gcc.
All those memes picturing C++ as unsafe and unstable yet the server that serves these memes is running mostly C/C++ and has an uptime of months.
True, but that’s partly because the Linux is beyond mature, and you can ferret out a lot of bugs with millions of users over decades.
Time to rewrite it in Rust!
/ducksandruns
if i remember lemmy is written in rust
https://lemmy.world/comment/8463515
Lemmy is written in Rust. There might be bits of C at the periphery behind bindings.
And linux is written in C.
Predominantly C. But even the kernel is beginning to use Rust as a way of avoiding entire classes of programming error.
well and it’s only running this well because of decades of effort and millions of effort spent on security reviews
They implemented some sort of OOP tho.
edit: I meant: the Linux devs implemented some sort of OOP in their C code in the kernel – is something i read forever ago.
Rust isn’t really OOP like C#, Java or C++ - it has structs with functions that you could consider an “object” but there is no inheritance. Instead Rust uses traits which are a little bit like interfaces in some languages.
The way the kernel is using Rust at the moment is to produce safe bindings for modules to be written in Rust, i.e. you can create a module in Rust source which will be correctly loaded up, the code is safe by default and will have access to kernel services via bindings. I expect over time that more of the kernel will become Rust, but the biggest impediment right now is Rust relies on LLVM and LLVM only supports a subset of targets that a kernel could potentially support with another compiler like gcc.
Wow, way to ruin my joke.
Also they’re always treating C++ like it’s some arcane enterprise variant that uses 1990s C++
Using modern C++ you can write much cleaner, more usable, and really safe code
Lemmy is rust and it’s alternative sublinks is java…your comment has now power here