Hacker News new | ask | show | jobs
by c_crank 1088 days ago
I don't think Linus was pleased or fooled. I think that there hasn't been a bunch of eager beavers trying to write Linux drivers in other languages until Rust.
1 comments

C++ was rejected as a driver language. All those other languages you mentioned also are also not suitable. Why could this be?
I don't know about Ada+Spark, Cyclone, D, but, since it can compile to C, you can write Linux kernel modules in Nim without Linus' permission / specific "help" from the Linux kernel team: https://forum.nim-lang.org/t/10303

(Yes, not stock Nim, but in that Araq expresses an interest in that thread in supporting said in stock Nim.)

This is one advantage to a C/C++ target in addition to trying to optimize the actual emitted assembly from gcc/clang/etc. It also helps when LLVM may not support your CPU, but you have a C compiler, such as in some embedded spaces. There are trade-offs, of course, as with everything.

Linus and many other people hate C++ for having strange compiler rules and a kitchen sink approach. Ada, for a long time, was linked to a proprietary government supplied compiler, and also did not have many volunteer developers available. Cyclone was garbage collected, and Linus prefers not to deal with garbage collecting. I don't think he's ever commented on D, it's an obscure language.