Re:A brief introduction to C++'s model for type- and resourc...
by steveklabnik on Friday January 15, 2016 @11:35AM
(#10910321)
Yeah. I _thought_ that I remembered the tool was supposed to come out two months ago, but I don't have any citation for that. I want to play with it!
> the non-ability to incrementally include Rust in a project.
Well, it just depends on how you do it. The approach Firefox is taking is to peel off chunks, re-write them in Rust, and then integrate that way. That said, better integration would be nice, and some people have some ideas about it.
Re:A brief introduction to C++'s model for type- and resourc...
by sitkack on Friday January 15, 2016 @03:15PM
(#10911801)
There are some great talks by Neil MacIntosh about the kinds of static analysis they are building into the tool.
CppCon 2015: Neil MacIntosh “Static Analysis and C++: More Than Lint" https://www.youtube.com/watch?v=rKlHvAw1z50
CppCon 2015: Neil MacIntosh “Evolving array_view and string_view for safe C++ code"https://www.youtube.com/watch?v=C4Z3c4Sv52U
For something of this magnitude I wouldn't consider the project late until mid summer.
Stroustrup's keynote at CppCon is a great overview of the semantics they want to support and the errors that the tooling with will prevent. https://www.youtube.com/watch?v=1OEu9C51K2A
Re:A brief introduction to C++'s model for type- and resourc...
by steveklabnik on Friday January 15, 2016 @03:33PM
(#10911911)
I had watched Stroustrup's talk, but not Neil's. Thanks!
Re:A brief introduction to C++'s model for type- and resourc...
by Manishearth on Friday January 15, 2016 @02:57PM
(#10911688)
For the isocpp guidelines to be truly safe on a C++ module similar work is required, really. Without the C-interface boilerplate, but plenty of old-C++ idioms will probably be incompatible with isocpp and you need to carefully work at abstraction boundaries.
Less work, but nontrivial and of a similar kind.
> Once the tool exists, how much code will actually use it?
Any number of the 10M+ C++ developers and probably a large number of Open Source projects. I remember something like 20% of C++ (projects|programmers) are using C++1/4. If half of those use the tool, that is still 1M programmers using a much safer system. Not the same as Rust, but better than the old way. In the near term, the total quantity of safer code will come from C++ adopting better static analysis than from the adoption of Rust, even if Rust is the better way.
The biggest impediment to Rust adoption with C++ programmers is the non-ability to incrementally include Rust in a project. But this is true of C++ in general.
Rust has the advantage of mind share, witnessing the mistakes of C++ and the ever increasing torrent of new programmers who will choose Rust over C and C++. Every problem that a C++ programmer has, a Rust programmer has. A Rust programmer just solves it slightly differently.