Haifa::C++ meetup - Future direction of C++ and C++20: on the road towards heterogeneous programming

The upcoming Haifa::C++ meetup (Dec. 18) will feature a special talk:

Future direction of C++ and C++20: on the road towards heterogeneous programming

By Michael Wong

From the event description:

C++ 20 is sure to be a major release but have you ever wondered if there is a direction to C++?
The first half of this talk will devote to the Directions Groups' description of where future C++ is heading and show some of the features that have already landed towards C++20. Next, the current status of parallel programming support in C++ will be discussed, along with an outline of the upcoming features related to parallelism in C++20 and TSs. Lastly, the way C++ moves towards heterogeneous support will be highlighted, describing changes that started in C++11 with lambda, pushed forward with C++17 with Thread of Execution, and soon to enter C++20 with executors. These form a subtle but definite direction towards heterogeneous programming support.


Madrid Cpp meetup: Bare metal programming

New Madrid C++ comin' atcha:

Embedded systems: Bare metal programming

By Madrid C/C+

In Spanish from the event brief: 

Acabamos el año con uno de los meetups más esperados de la temporada: sistemas embebidos. Nos adentramos en un terreno inexplorado por muchos de nosotros, pero que tienen gran relevancia en el mundo industrial: IoT, domótica, industria del automóvil,...

How to build a JIT compiler in C++ with LLVM—Mark Leone

At the December 2018 meetup of Utah C++ Programmers, Mark Leone will give us a presentation on how to build a JIT compiler in C++ with LLVM. Food will be provided, so please RSVP so we have a proper headcount.

How to build a JIT compiler in C++ with LLVM

by Mark Leone

About the meetup:

In this talk I'll show how to compile a simple programming language into machine code using the LLVM compiler toolkit. I'll start with a simple lexer (using re2c) that converts a stream of characters into a stream of tokens (e.g. numbers and identifiers), followed by a simple parser (using recursive descent) that produces a syntax tree. Then I'll show how to generate LLVM intermediate code (IR), optimize it, and generate machine code using the LLVM JIT engine. Full source code will be available afterwards.

No compiler experience will be required, although a reasonable familiarity with C++ will be assumed. Check out the LLVM Tutorial for a preview of similar material.

About the speaker: Mark Leone has been working with C++ as a graphics software engineer for 20 years. He recently joined the OptiX ray tracing team at NVIDIA here in Salt Lake City. He has over two dozen movie credits for his previous work at Pixar and Weta Digital (in New Zealand).

Meeting C++ and Meeting Embedded trip report—Conan C/C++ Package Manager

Were you there? 

Meeting C++ and Meeting Embedded trip report

by Conan C/C++ Package Manager

From the article:

On Wednesday, before Meeting C++, we attended and presented a talk at Meeting Embedded, a new conference about many topics related to embedded systems. C++ and C had a relevant role in this conference, obviously (accordingly to Dan Saks statistics around 60% in embedded code is C, then around 20% is C++, followed by assembly), but where other topics presented, like Rust, protocols for embedded (MQTT), academic and professional education, real-time systems.

We did our own talk Continuous Integration of C/C++ for embedded and IoT with Jenkins, Docker and Conan, which went quite well, especially considering that we were running a real demo, live updating the embedded code in a Raspberry PI, that was built with Docker in Jenkins, using cross-compiled (from Windows) packages, and uploaded to Artifactory, all of that done in the live demo...

Pacific++ 2018: C++ Past vs. Future—Titus Winters

Did you see it?

Pacific++ 2018: C++ Past vs. Future

by Titus Winters

From the video:

Over the last 35 years, C++ has remained a constant fixture in the programming landscape. With advancements in the language through C++11, 14, and 17, we've created new dialects that have breathed new life into C++. With C++ Core Guidelines and a rich community of authors and speakers providing guidance on C++, it is easier now to steer clear of problem areas and hopefully stay in the "good parts" of the language.
Or at least, that's what we'd like. In practice, many habits of C++ programmers are unsafe and will be hard to keep working. The triple perils of ADL, ODR, and ABI leave a wide assortment of pitfalls for code maintenance. Many systems happen to work, but perhaps more out of luck than actual correctness.
How do we explain this dichotomy? How is the language better than it ever has been, and at the same time so dangerous and burdened with silent pitfalls and legacy? Can the standard evolve over time to reduce these perils? More importantly: should it?
In this talk I'll remind people of how precarious most C++ code is in the face of change (like advancing to a new language version), and discuss the most fundamental issue facing the committee these days: how to balance between the legacy code of the past and the yet-to-be-written code of the future.

C++ On Sea: Full schedule now available

The schedule for the new C++ On Sea conference is now available:

Full schedule now available

by C++ On Sea

From the announcement:

We're thrilled to announce that the full schedule for the conference has now been finalised and published. Of course, when I say, "finalised", that doesn't mean it definitely won't change again, but I don't expect much movement.

You'll notice that day two (Tuesday) has four tracks. As mentioned before, the response was so great that we felt we had to put on an extra track. Note, also, the Lightning Talks at the end of day one. We'll take submissions for that closer to the time of the conference - or at the conference.



Slides of the 25th of October 2018 BeCPP Meeting—Marc Gregoire

BeCPP_Logo_282x64.pngOn October 25th 2018, the Belgian C++ Users Group had their next event, this time sponsored by Altran.

Slides of the 25th of October 2018 BeCPP Meeting

About the event:

  • "Writing Standard Library Compliant Data Structures and Algorithms" (Marc Gregoire)
  • "Memory Architecture & Performance" (Barry Van Landeghem)

If you couldn’t attend the event in person, or if you would like to go over the material again, you can download them from the BeCPP website.

C++ Annotated: June - September 2018—Anastasia Kazakova

800x320_Twitter_card.pngConferences, proposals, and learning, O my!

C++ Annotated: June - September 2018

by Anastasia Kazakova

From the article:

... a hot C++ conference season kicked off again with CppCon. Pacific++, C++ CoreHard, Meeting C++, ADC, code::dive, and the C++ Committee meeting in San Diego, California, are coming up later this year...

... Today we are starting a new section in our regular C++ Annotated. In each issue, we will cover a selection of C++ proposals and initiatives you definitely should learn about while developing in C++. This time we unveil static exceptions, constexpr new, and lifetime checks. See details below...