3 ms·
I was thinking on the same line while watching the video. Does anybody know how feasible would be to rewrite the C part in Rust?
by mseri 12y ago
I was thinking on the same line while watching the video. Does anybody know how feasible would be to rewrite the C part in Rust?
- talex5 12y agoI sometimes hack on the C part (e.g. porting Mirage to ARM). The C code in Mirage is basically: - malloc - printk - openlibm (standard maths functions) - gmp (fast big ints for crypto stuff) - garbage collector - support code to make the above C code compile (assert, various standard header files, etc) Once Rust has matured, and if reliable, well-optimised replacements for all these libraries become available, then it would be interesting to use it. But until then, there isn't much C code you can replace, because there is a minimal core you need to provide to compile C libraries like gmp, and we're pretty close to that already. Rust's linear types / lifetime support is interesting, though. For example, when you pass a buffer to Xen for transmission on the network, it's important that you don't modify it again until it has been read (or you'll get a race). Rust's type system can express that statically, whereas OCaml's can't. On the other hand, OCaml has functors, is far more mature and has lots of libraries available.