
CppCon 2015: Herb Sutter "Writing Good C++14... By Default"
About this video
Herb Sutter's CppCon 2015 plenary on writing safe, modern C++ by default using the C++ Core Guidelines. It includes a demo of lifetime-checking static analysis tooling.
Why it appears in the archive
HN cites it in C++ versus Rust safety debates for its lifetime profile demo, and recommends it as a modern C++ talk.
AI-generated summary and labels from the source dataset; verify important details against the video. Source & credits.
From the Hacker News discussion
We should be seeing completely safe C++ code soon. Take a look at Herb Sutter's CppCon talk this year: [VIDEO] Reinventing the wheel isn't entirely necessary. Though if you're a SysAdmin and you write your codebase in Rust.. that's some nice job security. ;)
Read original comment ↗At this year's CppCon Herb Sutter the chair of the ISO C++ committee addressed just this issue of lifetime safety. Here is a video of his talk and includes a demo of the upcoming static analysis tool that can do this with very minimal annotations [VIDEO] I remember thinking when watching the talk that this was a very bad day for Rust as C++ could now do most of what Rust was promising
Read original comment ↗Take a look at Herb Sutter's talk from CppCon 2015. The slides are here ( [LINK] ) and the video is here [VIDEO] . Microsoft will be releasing the static analysis tool as a free cross-platform tool (and I think open-source IIRC). They shipped a preview for Visual Studio 2015 with Update 1, and are planning on shipping a cross-platform version soon. As tools like this become free and ubiquitous, it will greatly improve C++ code safety.
Read original comment ↗I've been spending a few days going through talks from last years cppcon[1]. They're all good, but they've all left me with a strong desire for a strongly opinionated, there-is-no-past-only-the-future introduction to C++14 (and incidentally, C11). I've added a few of those talks I've watched and liked to a small playlist (with a couple of other talks on programming, unrelated - the relevant talks are prefixed with "cppcon 2015"): [LINK] The full cppcon playlist is here: [LINK] Of special relevance is the rather excellent talk by Kate Gregory on "Stop Teaching C" (when you're supposed to do an intro course to C++): "CppCon 2015: Kate Gregory “Stop Teaching C"": [LINK] (But again, I want an open wiki/live tutorial, along the lines of "How I start", but longer, which goes through all this stuff. We really should make one, both for C++14 and for C11). CppCon 2015: Herb Sutter "Writing Good C++14... By Default": [VIDEO] Is also rather uplifting, and: CppCon 2015: Sean Parent "Better Code: Data Structures": [LINK] makes a pretty good case for simple, modern C++ being clear, easy and efficient. Finally, CppCon 2015: Phil Nash “Test Driven C++ with Catch”: [LINK] apart for being a pretty straight forward intro to a simple testing framework, appears to reveal some secrets combining template magic and still get sane compile times (hint: don't recompile more (template) code on every iteration than you need to). There's a couple of good ones that touch on meta-programming too (Look for t
Read original comment ↗- Tour of C++ ( [LINK] ) - Principles and Practice Using C++ ( [LINK] ) - From Mathematics to Generic Programming ( [LINK] ) - The Scott Meyers books Some of the Bjarne Stroustrup videos, "Learning and Teaching Modern C++" - [LINK] Some of the Herb Sutter videos, "Writing Good C++14... By Default" - [VIDEO] "Back to the Basics! Essentials of Modern C++ Style" - [LINK] Some of the Kate Gregory videos, "Stop Teaching C" - [LINK] "10 Core Guidelines You Need to Start Using Now" - [LINK] "It's Complicated" - [LINK]
Read original comment ↗Sure. That was kind of my point. Still, as Herb Sutter asked at CppCon 2015: "How many of you have your own homegrown string types at your companies? ... Don't lie. ... Right. And those of you who didn't put up your hand and are just bashful, ... we know we have them." [1] [1] [VIDEO]
Read original comment ↗Learn C++. You will have the opportunity to learn low-level features but know how to wrap them up inside highly performant, high-level components. Rust is interesting, but I think it will remain an interesting language outside the mainstream without any major commercial backers (Mozilla does not count). In addition, C++ is taking a lot of the ideas from Rust and incorporating them along with tooling that will provide 95+% of the value of Rust while still keeping the advantages of C++ (see [VIDEO] ) What is interesting with C++ is that although a lot of vendors are pushing their own languages - Microsoft with C#, Apple with Swift, Google with Go, Facebook with Hack, Mozilla with Rust - they are all deeply involved with C++ because C++ powers their mission-critical code. Another way of putting it would be that despite all the promotion if all of Mozilla's Rust code were eliminated tomorrow nobody would notice, but if all of Mozilla's C++ code were eliminated, it would cease to exist. Also, C++ is rapidly evolving and by learning Modern C++ 14 now, you can avoid a lot of the mistakes of C++ that were common in the past and write safe, elegant code. C++ is also experiencing a renaissance (see [LINK] ). C++ is now the one high-level language that is natively supported by the system vendor across Windows, Linux, Mac, iOS, Android, Windows Phone, XBox, and Playstation.
Read original comment ↗Here CppCon 2015: Herb Sutter "Writing Good C++14... By Default" around 00:32:00. [VIDEO] > The work-in-progress ISO Core C++ lifetime profile does not work on unmodified code and requires a lot of annotations… Herb mentions that it still less than lifetimes in Rust given C++'s type system: [VIDEO] [LINK]
Read original comment ↗