As part of standardization, a proposal for Structured Concurrency (http://wg21.link/p2300) will be discussed. The proposed components are a bit abstract, and it requires some explanation of how things fit together. This presentation will discuss and demonstrate the implementation of a simple networking application using sender/receivers. In particular, the presentation will show:
- How to build asynchronous tasks using senders/receivers.
- How cancellation is integrated.
- Some aspects of the underlying implementation.
- Highlights of the proposed standard's positive properties.
---
Dietmar Kühl
Dietmar Kühl is a senior software developer at Bloomberg L.P. working
on the data distribution environment used both internally and
by enterprise installations at clients. Before joining Bloomberg
he has done mainly consulting for software projects in the
finance area. He is a regular attendee of the ANSI/ISO C++
standards committee, presents at conferences, and he used to
be a moderator of the newsgroup comp.lang.c++.moderated. He
frequently answers questions on Stackoverflow.
---
Videos Filmed & Edited by Bash Films: http://www.BashFilms.com
YouTube Channel Managed by Digital Medium Ltd https://events.digital-medium.co.uk
Contemporary C++ in Action - Daniela Engert - CppCon 2022
This talk is different from typical conference presentations. Instead of focussing on one particular topic I want to take you with me on a journey where I put various pieces from the C++ landscape together into a small application and show how they fit together beautifully. My goal is to debunk the myth that the committee is looking to please experts and library developers instead of making life easier for the many developers in the trenches. This is not slideware, at the end of our tour the code will compile and run with some entertaining result.
On this journey, I will be visiting modules (using modularized popular libraries and others that constitute the app), do some network cppcon.digital-medium.co.uk/tag/programming/">programming with coroutines (based on ASIO executors, as there are no C++ standard executors yet), slip in one or two of the flagship C++23 features, like explicit object parameters or some of the new library stuff, and season the stew with items from recent C++ standards. It's a tiny application using techniques that an average programmer in the embedded or industrial world (like me) might find useful. The code I'll show also contains very tiny fragments of condensed or simplified sources in active development taken from our in-house codebase - old and trusted, but thrust into the modern age.
If time permits, I will detour a little into modules and show the options that C++20 gives you to create and compose your own modules. For that matter, almost every module translation unit type is present in the demo code to look at how these things can be done in practice. A second insert is a discussion of the object lifetime safety that coroutines can offer when composed well, and how important cancellation is.
---
Daniela Engert
Daniela has a degree in electrical engineering and has been working for more than 30 years in small innovative companies in the field of software and hardware development. She has spent her youth with exploring the very first microprocessors since the late 70's, and has been creating software professionally for 40 years now. After a long time using many different cppcon.digital-medium.co.uk/tag/programming/">programming languages, C++ has now been the exclusive workhorse throughout the last two decades. With great pleasure Daniela is now also a member of the ISO C++ committee. For the better part of her career, the domain was applied digital signal processing (medicine, metrology, reconnaissance), but during the last decade the focus shifted onto special engineering in the field of industrial non-destructive testing of semi-finished and finished steel products using ultrasound. Besides that, she loves to relax with hard metal and soft cheese, hot curries and cool jazz.
---
Videos Filmed & Edited by Bash Films: http://www.BashFilms.com
YouTube Channel Managed by Digital Medium Ltd https://events.digital-medium.co.uk