C++ Best Practices--Jason Turner
Interested?
C++ Best Practices
by Jason Turner
From the article:
Level up your C++, get the tools working for you, eliminate common problems, and move on to more exciting things!
September 13-19, Aurora, CO, USA
October 25, Pavia, Italy
November 6-8, Berlin, Germany
November 3-8, Kona, HI, USA
By Adrien Hamelin | Jan 25, 2021 01:32 PM | Tags: community
Interested?
C++ Best Practices
by Jason Turner
From the article:
Level up your C++, get the tools working for you, eliminate common problems, and move on to more exciting things!
By Adrien Hamelin | Jan 25, 2021 01:29 PM | Tags: community
The series continue.
Build Throughput Series: More Efficient Template Metaprogramming
by Xiang Fan
From the article:
In the previous blog post I shared how template specialization and template instantiation are processed in the MSVC compiler. We will now look at some examples from real-world code bases to show some ways to reduce the number of them...
By Felix Petriconi | Jan 25, 2021 11:58 AM | Tags: community c++20
The schedule for the ACCU 2021 conference has been published. The complete conference will be held online because of the pandemic.
ACCU 2021 Schedule
by ACCU
About the schedule
Again there are three strong C++ tracks!
The keynote speakers are Emilie Bache, Kevlin Henney, Patricia Aas and Sean Parent
Beside the four days (2021-03-10 - 2021-03-13) with great talks, there are two days with these C++ related fullday workshops on the days before and after the conference.
- Better Code by Sean Parent
- Good Modern C++ Design and Practices by Peter Sommerlad
- Modern C++ Template Programming by Nico Josuttis
- Modern C++ Idioms by Mateusz Pusz
- Building and Packing Modern C++ by Adrian Ostrowski and Piotr Gaczkowski
- C++ Concepts: Constraining C++ Templates in C++20 and before by Mateusz Pusz
So don't hesitate to register here. The early bird discount is available until 2021-02-16.
The schedule is subject to change without notice until 2021-03-14
By Administrator | Jan 22, 2021 03:48 PM | Tags: None
The 2021-01 mailing of new standards papers is now available.
WG21 Number | Title | Author | Document Date | Mailing Date | Previous Version | Subgroup |
---|---|---|---|---|---|---|
P0447R12 | Introduction of std::colony to the standard library | Matt Bentley | 2021-01-14 | 2021-01 | P0447R11 | SG14 Low Latency,LEWG Library Evolution,All of WG21 |
P0847R6 | Deducing this | Barry Revzin | 2021-01-15 | 2021-01 | P0847R5 | EWG Evolution |
P1121R2 | Hazard Pointers: Proposed Interface and Wording for Concurrency TS 2 | Maged M. Michael | 2021-01-14 | 2021-01 | P1121R1 | LWG Library |
P1425R2 | Iterators pair constructors for stack and queue | Corentin Jabot | 2021-01-18 | 2021-01 | P1425R1 | LEWG Library Evolution,LWG Library |
P1682R2 | std::to_underlying | JeanHeyd Meneide | 2021-01-16 | 2021-01 | P1682R1 | LWG Library |
P1708R3 | Simple Statistical Functions | Richard Dosselman | 2021-01-14 | 2021-01 | P1708R2 | SG19 Machine Learning |
P1989R1 | Range constructor for std::string_view 2: Constrain Harder | Corentin Jabot | 2021-01-17 | 2021-01 | P1989R0 | LWG Library |
P2036R1 | Changing scope for lambda trailing-return-type | Barry Revzin | 2021-01-13 | 2021-01 | P2036R0 | EWG Evolution |
P2072R1 | Differentiable programming for C++ | Marco Foco | 2021-01-14 | 2021-01 | P2072R0 | All of WG21 |
P2093R3 | Formatted output | Victor Zverovich | 2020-12-26 | 2021-01 | P2093R2 | LEWG Library Evolution |
P2168R1 | generator: A Synchronous Coroutine Generator Compatible With Ranges | Corentin Jabot | 2021-01-18 | 2021-01 | P2168R0 | LEWG Library Evolution |
P2210R1 | Superior String Splitting | Barry Revzin | 2021-01-04 | 2021-01 | P2210R0 | LEWG Library Evolution |
P2216R2 | std::format improvements | Victor Zverovich | 2021-01-14 | 2021-01 | P2216R1 | LWG Library |
P2232R0 | Zero-Overhead Deterministic Exceptions: Catching Values | Emil Dotchevski | 2021-01-22 | 2021-01 | EWGI SG17: EWG Incubator | |
P2244R0 | SG14: Low Latency/Games/Embedded/Finance/Simulation Meeting Minutes | Michael Wong | 2021-01-14 | 2021-01 | SG14 Low Latency | |
P2245R0 | SG19: Machine Learning Meeting Minutes | Michael Wong | 2021-01-14 | 2021-01 | SG19 Machine Learning | |
P2246R1 | Character encoding of diagnostic text | Aaron Ballman | 2021-01-15 | 2021-01 | P2246R0 | EWG Evolution |
P2259R1 | Repairing input range adaptors and counted_iterator | Tim Song | 2021-01-13 | 2021-01 | P2259R0 | LWG Library |
P2266R0 | Simpler implicit move | Arthur O'Dwyer | 2021-01-07 | 2021-01 | EWG Evolution,CWG Core | |
P2276R0 | Fix std::cbegin(), std::ranges::cbegin, and cbegin() for span (fix of wrong fix of lwg3320) | Nicolai Josuttis | 2021-01-15 | 2021-01 | LEWG Library Evolution,LWG Library | |
P2277R0 | Packs outside of Templates | Barry Revzin | 2021-01-03 | 2021-01 | EWG Evolution | |
P2278R0 | cbegin should always return a constant iterator | Barry Revzin | 2021-01-10 | 2021-01 | LEWG Library Evolution | |
P2279R0 | We need a language mechanism for customization points | Barry Revzin | 2021-01-15 | 2021-01 | EWG Evolution | |
P2280R0 | Using unknown references in constant expressions | Barry Revzin | 2021-01-13 | 2021-01 | EWG Evolution | |
P2281R0 | Clarifying range adaptor objects | Tim Song | 2021-01-14 | 2021-01 | LWG Library | |
P2283R0 | constexpr for specialized memory algorithms | Michael Schellenberger Costa | 2021-01-12 | 2021-01 | LEWG Library Evolution | |
P2285R0 | Are default function arguments in the immediate context? | Andrzej Krzemieński | 2021-01-14 | 2021-01 | EWG Evolution | |
P2286R0 | Formatting Ranges | Barry Revzin | 2021-01-15 | 2021-01 | LEWG Library Evolution | |
P2287R0 | Designated-initializers for base classes | Barry Revzin | 2021-01-20 | 2021-01 | EWG Evolution |
By Ansel Sermersheim | Jan 21, 2021 11:11 AM | Tags: None
New video on the CopperSpice YouTube Channel:
Atomics
by Barbara Geller and Ansel Sermersheim
About the video:
We have released a new video which continues our C++ Memory Model discussion. This section covers the usage of Atomics and memory ordering. Do you know about the expected value in compare_exchange?
Please take a look and remember to subscribe!
By Meeting C++ | Jan 21, 2021 09:04 AM | Tags: performance meetingcpp experimental efficiency advanced
Last week Bryce Adelstein Lelbach spoke about The CUDA C++ Standard Library at Meeting C++ online
The CUDA C++ Standard Library
by Bryce Adelstein Lelbach
By Adrien Hamelin | Jan 20, 2021 12:27 PM | Tags: c++20
A new useful construct in the standard library.
Semaphores in C++20
by Rainer Grimm
From the article:
Semaphores are a synchronization mechanism used to control concurrent access to a shared resource. They also allow it to play ping-pong...
By Meeting C++ | Jan 19, 2021 04:20 AM | Tags: video meetingcpp community basics
New video from Meeting C++ 2020
Calling Functions - Meeting C++ 2020
by Klaus Iglberger
By Adrien Hamelin | Jan 18, 2021 01:09 PM | Tags: advanced
Optimise templates.
Build Throughput Series: Template Metaprogramming Fundamentals
by Xiang Fan
From the article:
Template metaprogramming is popular and seen in many code bases. However, it often contributes to long compile times. When investigating build throughput improvement opportunities in large codebases, our finding is that more than one million template specializations and template instantiations is quite common and often provides optimization opportunities for significant improvement.
In this blog post, I will walk through the differences between template specialization and template instantiation and how they are processed in the MSVC compiler...
By Adrien Hamelin | Jan 18, 2021 01:02 PM | Tags: c++11 advanced
Convinced?
4 Features of Boost HOF That Will Make Your Code Simpler
by Jonathan Boccara
From the article:
Boost HOF, standing for Higher Order Functions, is a Boost library offering functions that work on functions.
This impressive library provides a lot of advanced components allowing to go a step further into functional programming in C++. In this post, we’ll focus on 4 of the more basic ones (+ a bonus one) that allow to make code simpler in common tasks.
HOF provides one header in the form of #include <boost/hof/XXX.hpp> for each component, as well as a general header #include <boost/hof.hpp>. It is compatible with C++11...