Quo Vadis - Modernes C++

Contents[Show]

DONE: I have written almost 100 posts about C++20. Now, I want to ask you the question: What should be my next big topic? Make your choice in this poll.

 

First of all, here is an overview of my more than 300 posts including, in particular including C++20.

Now, let me take about the future of Modernes C++. I have three ideas in my mind: C++23, extending and embedding Python with C/C++, and templates. The poll is open for one week including the 24.04. This means, in my next post I present your favourite and my plan to write about it.

Quo Vadis: Modernes C++

Make your choice:

What should be the Next Big Topic of my Blog?
  • Votes: (0%)
  • Votes: (0%)
  • Votes: (0%)
Total Votes:
First Vote:
Last Vote:

Maybe, you don't know what to choose. Here is more information about each topic.

C++23

C++20 is just the starting point. There is work to be done in C++23 to fully integrate and use the potential of the Big Four in C++. Let me give you a few ideas about the near C++ future.

  • The Standard Template Library was designed by Alexander Stephanov with concepts in mind. Still, the integration of concepts is missing in C++20.
  • We can expect a modularized Standard Template Library and hope for a packaging system in C++.
  • Many algorithms known from functional programming are still missing in the ranges library. A future C++ standard should improve the interplay of the range algorithms and the standard containers.
  • We don’t have coroutines. We only have a framework for building powerful coroutines. A coroutines library will be, with high probability, in C++23.

Ville Voutilainen’s proposal P0592R4 “To boldly suggest an overall plan for C++23” gives a first idea of the upcoming C++23 standard. Ville names seven features.

  • C++23
    • Library support for coroutine
    • A modular standard library
    • Executors
    • Networking
  • C++23 or later
    • Reflection
    • Pattern matching
    • Contracts

Extending and Embedding Python with C/C++

Python is very communicative. On the one hand, it is very easy to call C/C++ functionality from Python (extend), and on the other hand, Python can be used directly from a C/C++ runtime (embed). Extend allows you to offload performance-critical parts of your program to C/C++. Thanks to embedding a Python interpreter in your C/C++ application, the C/C++ application has a scripting interface.

A few days ago, I gave a German presentation at the EnterPy2021 about extending and embedding Python with C/C++. Here is the presentation

Templates

The future of C++ speaks templates. Sadly, most C++ professionals don't know templates sufficiently well enough. My idea is to provide you with the details about templates. Here is my rough plan:

  • Basics
    • Function templates
    • Class templates
    • Template parameters
    • Template arguments
    • Specialization
  • Details
    • Template Instantiation
    • Variadic Templates
    • Fold Expressions
    • Friends
    • Dependent Names
  • Techniques
    • Automatic return type
    • Template metaprogramming
    • Type traits
    • constexpr
    • constexpr if
  • Design
    • Static versus dynamic polymorphism
    • CRTP (curiously recurring template pattern)
    • Expression templates
    • Idioms and patterns
  • C++20
    • Concepts

Guest Posts

if you want to write an interesting post about C++, I'm happy to publish it on my blogs. This means I publish it on my German and English blogs. You can write it in your mother tongue. I translate it into the another language. You can expect 10.000 - 100.00 readers.

What's next?

Depending on your choice, I present in my next post a detailed plan about my future posts. 

Thanks a lot to my Patreon Supporters: Matt Braun, Roman Postanciuc, Tobias Zindl, Marko, G Prvulovic, Reinhold Dröge, Abernitzke, Frank Grimm, Sakib, Broeserl, António Pina, Sergey Agafyin, Андрей Бурмистров, Jake, GS, Lawton Shoemake, Animus24, Jozo Leko, John Breland, espkk, Louis St-Amour, Venkat Nandam, Jose Francisco, Douglas Tinkham, Kuchlong Kuchlong, Robert Blanch, Truels Wissneth, Kris Kafka, Mario Luoni, Neil Wang, Friedrich Huber, lennonli, Pramod Tikare Muralidhara, Peter Ware, Tobi Heideman, Daniel Hufschläger, Red Trip, Alexander Schwarz, Tornike Porchxidze, Alessandro Pezzato, Evangelos Denaxas, Bob Perry, Satish Vangipuram, Andi Ireland, Richard Ohnemus, Satish Vangipuram, and Michael Dunsky.

 

Thanks in particular to Jon Hess, Lakshman, Christian Wittenhorst, Sherhy Pyton, Dendi Suhubdy, Sudhakar Belagurusamy, Richard Sargeant, Rusty Fleming, and Said Mert Turkal.

 

 

My special thanks to Embarcadero CBUIDER STUDIO FINAL ICONS 1024 Small

 

Seminars

I'm happy to give online seminars or face-to-face seminars worldwide. Please call me if you have any questions.

Bookable (Online)

German

Standard Seminars (English/German)

Here is a compilation of my standard seminars. These seminars are only meant to give you a first orientation.

New

Contact Me

Modernes C++,

RainerGrimmSmall

 

 

 

My Newest E-Books

Course: Modern C++ Concurrency in Practice

Course: C++ Standard Library including C++14 & C++17

Course: Embedded Programming with Modern C++

Course: Generic Programming (Templates)

Course: C++ Fundamentals for Professionals

Interactive Course: The All-in-One Guide to C++20

Subscribe to the newsletter (+ pdf bundle)

Blog archive

Source Code

Visitors

Today 7981

Yesterday 10973

Week 18955

Month 179629

All 6828321

Currently are 211 guests and no members online

Kubik-Rubik Joomla! Extensions

Latest comments