GoingNative 38: The future of C++[17] - Updates from Lenexa

Download this episode

Download Video

Description

A few weeks ago, the ISO C++ Committee met in Lenexa, Kansas to hash out the future of the C++ language, specifically for C++17. We're honored to speak to two (previously featured) Microsoft delegates to the committee -- Gabriel "Gaby" Dos Reis and Artur Laksberg -- who took the time to give us a very nice overview of the major things that went down at the meeting!

Video Timeline
[00:55] Meet n' Greet
[02:02] Bjarne Stroustrup's 3 major themes for C++17

[03:35] Bjarne's "Top 10 List"
[03:43] #1 - Concepts
[05:03] #2 - Modules
[06:49] #3 - Ranges
[07:23] #4 - Uniform call syntax
[08:53] #5 - Co-routines
[10:39] #6 - Networking support
[11:06] #7 - Contracts
[13:01] #8 - SIMD vector and parallel algorithms
    [13:49] What is a TS [Technical Specification]?
    [14:27] TS's in-flight: Parallelism + Concurrency
        For more info on Parallel STL, check out Artur's previous GoingNative video!
    [16:05] Futures (related to Parallel Patterns Library [PPL])
    [17:36] Latches and barriers
    [18:39] Atomic smart pointers [ptr]
[19:40] #9 - Library "vocabulary types"
[20:30] #10 - Local arrays on the stack (via some "magic type")

[21:52] What's next for the Committee?
[23:21] How you can get involved! (Kona, Hawai'i + CppCon 2015)

Useful Links
https://isocpp.org/
CppCon 2015
GoingNative 31 - Parallel STL (feat. Artur)
GoingNative 32 - C++17 Preview (feat. Gaby)
Who is this Bjarne Stroustrup guy?

P.S. We're trying out a new camera setup. Apologies for any distraction; think of it as a behind-the-scenes glimpse =P Also, bonus points if you can correctly identify next month's video topic and post its name in the comments with each letter shifted alphabetically by the position of your comment, e.g. if you are the fourth commenter "Superbowl" = "Wytivfsap". Bonus points redeemable for C++ pride and our thanks to you as a vigilant viewer ;)

Tag:

C++

Embed

Format

Available formats for this video:

Actual format may change based on video formats available and browser capability.

    The Discussion

    • User profile image
      lkjhlkjh

      "look at all the cool new stuff coming in c++17" - some people working on visual studio that doesn't even fully support c++11 yet in the year 2015

      Concurrency is cool, though. Perhaps some decade from now, visual will be taking advantage of it and its GUI thread won't freeze randomly all the time to work on completion stuff or because the source control server is lagging.

    • User profile image
      gha11

      @downtowndave:You rock!

    • User profile image
      Martin

      Glad to finally hear more about Lenexa than what STL mentioned on reddit.

    • User profile image
      gdr

      @Martin: any specific areas you wanted to hear more about?

    • User profile image
      Martin

      @gdr: Uh... First let me say that I didn't want to sound ungrateful for the above video. I'm a C++ enthusiast who wants to know about any news there might be about C++. It's just seemed like a lot more people have written trip reports on ISO C++ meetings before Lenexa, while the Lenexa one hasn't been mentioned almost at all. Which is a shame, many people seem prepared to see C++ in a favorable light ATM, I'd hate to see such enthusiasm fade away. But since you've asked, one thing I'd like to know more about is: what's the status of the new Module stuff especially about which directions you're thinking in and which ... future issues do you see? (C++ and the module stuff also almost never seem to get discussed in public either, it'd be better if that changed as well...)

    • User profile image
      mwu

      Thank you for the video!

       

      @gdr: 

      There's one thing I really miss on the Bjarne's list: compile-time reflection. Currently writing code e.g. for serialization of data structures requires tons of boilerplace and usually becomes a maintenance nightmare (e.g. when someone adds a new field to the class but forgets to serialize it).

      I know that there is a SG7 that works on reflection and I saw a few competing proposals on that topic. Do you know what's the status and what are the chances of getting some proposal done and included in C++17?

    • User profile image
      gdr

      @Martin: Your feedback is most welcome.

      Regarding "public discussion on modules": SG2 (the Study Group on Modules) does have a public google group for discussion.  I take feedback from wherever I get them :)  There will definitely be more video materials on "modules" at some point in the coming months.  These post-meeting update videos have a time bound...

      The current directions for modules are the ones that were outlined in documents N4465 and N4466.  I got further directions from EWG at the Lenexa meeting; those will be incorporated in future updates and I will make sure the "directions and issues" document becomes unmissing :)

      We are also doing lot of implementation and experimentation work behind the scene.

       

    • User profile image
      gdr

      @mwu: SG7 produced a document on "source code capture information" (see document N4519), which was reviewed by both CWG and LWG adopted into a TS -- it is primarily a library feature. 

      "Serialization" has not reached the level of LWG scrutiny yet.  If there is one particular proposal from the offering that suits your need, please make sure you communicate that to SG7; it also has  a public google group.  See https://isocpp.org/forums  for more information.

    • User profile image
      Deactivated User

      As native store apps developer, I wish for an episode covering XAML + modern cpp with demo.

    • User profile image
      gha11

      @VSChawathe:Thanks for the suggestion! What content on that topic would interest you in a proposed episode? (an episode outline would be great!)

    • User profile image
      Deactivated User

      @gha11: As the update announcements to the library are in fragments, they get disorganized in all other work. The progress done should be contained by narrative of single episode. A "Hello World" with XAML data-binding from VS Blend designer with moderncpp codebehind instead of CX one should be the concluding demo.

    • User profile image
      gha11

      @VSChawathe: Thanks! I'll pass it along!

    • User profile image
      mmatrosov

      njnvg/pb-ebhgvarf (srng. Tbe Avfunabi)

      http://ideone.com/86Dh7i

    • User profile image
      gha11

      @mmatrosov: Impressive =) Thanks for going above and beyond!

    Comments closed

    Comments have been closed since this content was published more than 30 days ago, but if you'd like to send us feedback you can Contact Us.