3 ms·
"Disaffected C++ programmer" is altogether too accurate characterization of the author :). I've been removing references to other languages because (a) it's co
by stevedonovan 8y ago
"Disaffected C++ programmer" is altogether too accurate characterization of the author :). I've been removing references to other languages because (a) it's confusing (b) can be dismissive ("trash talking") - a language should stand on its own merits. So yes, a first draft.
I try to express the paradox - that although Rust is about explicitness, type inference hides the actual concrete types chosen - `f64` and `i32` are examples. This needs to be made .. explicit.
Personally I don't think it's possible for people with no prior exposure to programming to learn Rust effectively - unless they are exceptional (in the sense of being 'unusual'). This is because of certain hard constraints when learning a systems language that can't simplify computational models with a garbage collector. So, everyone comes from somewhere - but very different places. That's a challenge I haven't handled well enough (yet).
Being gentle is hard. We have to identify the cliffs, and find alternative routes to the top. I really appreciate this criticism, by the way, since most of the feedback has been technical/typos up to now.
- mkesper 8y agoSo the uses are pretty hardcore: operating systems, device drivers and embedded systems that might not even have an operating system I think this falls a little short. Think of tools like ripgrep which make use of C/C++-class speed with higher level language features.
- stevedonovan 8y agoI'm a big fan of ripgrep, and there's been a minor revival of command-line tools exploiting the speed + higher-level + reusable-crates that Rust provides. So 'hardcore' is not correct. I've personally found it very effective at writing such tools - I struggle a little more, but debug less. Let's not forget server-side: I'm still recovering from the trauma of mysterious segfaults when doing C++ on the server, which can easily happen with multithreading and are an absolute bastard to diagnose and fix.