tl;dr: Rust is NFG. Try again in 2030.
tl;dr: Rust is NFG. Try again in 2030.
Posted Sep 1, 2019 14:24 UTC (Sun) by ksandstr (guest, #60862)In reply to: Rust is the future of systems programming, C is the new Assembly (Packt) by da-x
Parent article: Rust is the future of systems programming, C is the new Assembly (Packt)
So it's not unreasonable to put that line of argument to rest just on the back of Rust's immaturity as a language, regardless of its supposedly groundbreaking special features (which don't exist inside "unsafe" blocks), and the discussion moved forward perhaps to its conclusion.
Rust is a huge crock. The reasons why it looks good to some are that contemporary C++ is also a crock (e.g. for attempting parity with Rust); and because its advocacybots[0] soak up all the flak that its features and lack thereof should rather face. Oh, and also security[1], and indistinct references to studies supposedly proving how people[2] just aren't good enough to handle sharp-cornered objects. This is not substantially different from the 1996 Java deal[3], only now it's a good thing that there's not going to eventually be a sufficiently smart just-in-time compiler and prescient garbage collector.
>(...) having Redox's kernel and Linux linked together, providing a single kernel binary, and drivers for Redox co-exist in the same space, gradually supplanting Linux drivers.
This is known as driver or subsystem porting, and it's commonly discussed in terms of having the younger system built up without reimplementing "the boring parts". In the context of Rust this takes on a rather millennarian tone where, instead of an eventual Redox 6.0 having hardware support (filesystem, device mapper, network stack, etc.) parity with Linux 12.34, the latter would have been rewritten to exclude non-Rust languages. A cultural revolution, if you will; certainly a great leap forward. Ensuring that definitely all the bathwater is gone so it won't be proven innocent of causing all our problems.
[-1] beyond identifier shadowing, which has a dedicated warning setting encouraged by common best practice.
[0] it's interesting to compare recent Rust advocacy with some from 2017; the arguments are the same and the conversations never move forward, akin to the hog having successfully dragged the farmer into a bout of mud-wrestling and wound up happy whether he wins or loses.
[1] in the sense of a small category of pointer bugs which can certainly look complete to the amateur who's never seen other use cases, let alone put them to practice himself; but not (say) AB-BA races, dangling keys, context violations such as misordered locking, and so forth.
[2] cheapest possible subcontractors, who can't but whose bugs aren't immediately apparent.
[3] in particular, MMUs still don't exist, and knee-jerkably deadly hazards still lurk even in data the program has itself generated.
Posted Sep 1, 2019 18:06 UTC (Sun)
by Cyberax (✭ supporter ✭, #52523)
[Link]
Please, do stop smoking whatever you're smoking.
Posted Sep 1, 2019 20:58 UTC (Sun)
by roc (subscriber, #30627)
[Link]
Posted Sep 2, 2019 1:37 UTC (Mon)
by flussence (guest, #85566)
[Link]
tl;dr: Rust is NFG. Try again in 2030.
Whut? Rust by design has statically managed object lifetime, that's the reason for the whole borrow-checker thingie.
tl;dr: Rust is NFG. Try again in 2030.
tl;dr: Rust is NFG. Try again in 2030.