3 ms·
I think Rust adoption has pointed out that the idea of safe C/C++ developers are a myth. It's an appeal to authority to be sure, but if Intel and Microsoft (and
by holy_city 7y ago
I think Rust adoption has pointed out that the idea of safe C/C++ developers are a myth. It's an appeal to authority to be sure, but if Intel and Microsoft (and others, but those two have talked about it) are finding that their security-conscious C/C++ developers are still putting memory safety bugs into production - there's an argument that the idea of "competent" use of C/C++ for safety critical is possible (in general) needs to be brought into question.
On a personal note, learning Rust has made me a much better C++ developer. I'm more conscious of various degrees of aliasing and multiple ownership, to the point where much of the C++ I've written of late is inspired by the borrow checker's conventions. And since what I do is usually executed concurrently, I've seen a concrete decrease in bug count and severity without cost in performance. Which means the time investment in learning Rust has paid off, in my opinion.
- pjmlp 7y agoWhile I agree, and I do like Rust, C++ still has a winning hand for those of us on Java/.NET. Just to give a possible example, given everything that Microsoft has been doing about Rust. On what concerns Windows systems programming, Rust must be able to integrate with .NET, allow mixed mode debugging, authoring of COM/UWP, use of the GUI frameworks, just as easy as VC++ allows us to. So I am eager to get to know about whatever Microsoft might announce in this regard.
- holy_city 7y agoYou can integrate with COM already through winapi [1] (and author your own COM objects too with com-impl[2]). GUI stuff is still a long way from being useful, but a huge chunk of code has nothing to do with UIs. And Rust can integrate with anything that can call C. w.r.t debugging, I haven't had much trouble mixing with C++ but I haven't tried to do anything through C#. [1] https://github.com/retep998/winapi-rs https://github.com/retep998/winapi-rs [2] https://github.com/Connicpu/com-impl https://github.com/Connicpu/com-impl
- pjmlp 7y agoYou can also make fire with two stones. That is the difference between using C++/CX, C++/WinRT or the existing Rust libraries. So how do you integrate Rust with VS debugging tools?