Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

That not quite correct. Sure, you will have some unsafe primitives that interact with hardware. But nothing stops you from creating abstractions on top of those.

Also, `unsafe` doesn't disable all language features or the type system, it just provides an escape hatch to use raw pointers. Which, yes is quite a big step away from "normal Rust", but that's why we abstract around them.

It sure is extra and boring work, but it's entirely possible to create ergonomic APIs around unsafe low level primitives. I mean, that's how a lot of stuff gets implemented in stdlib or even in some crates. We just don't interact with it frequently, though.

Not kernel developer myself, but I've done some embedded Rust and written drivers





Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: