C++, big in Japan – Michael Hava am C++26 Komiteemeeting
Das C++ Komitee traf sich vom 18. bis 23. März 2025 in Tokyo und arbeitete weiter an den Features für C++26. Dies war bereits das dritte von insgesamt neun Meetings zu C++26. Mit diesem Treffen ist bereits die Hälfte der „Featureentwicklungszeit“ für C++26 abgeschlossen. Geplant sind insgesamt sechs Meetings für die Entwicklung neuer Features sowie drei weitere für die Stabilisierung und Finalisierung des neuen Standards. Michael Hava ist Mitglied des Komitees und war wie gewohnt vor Ort.
Potenzielle neue Features für C++26
Zu den potenziellen neuen großen Features von C++26 zählen Pattern Matching, Reflection und Contracts. Interessanterweise wurden Reflection und Contracts während dieses Meetings erstmals nicht von den entsprechenden domänenspezifischen Unterarbeitsgruppen (SG7 und SG21) besprochen, sondern direkt von den Sprach- und Bibliothekserweiterungsgruppen (EWG und LEWG).
Feedback und Diskussionen zu neuen Features
Das Review von Reflection war überwiegend positiv. Auch das Pattern Matching erhielt größtenteils positives Feedback. Allerdings wurde die Diskussion durch ein Erdbeben der Stärke 5.2 unterbrochen. Das Review von Contracts fiel gemischter aus, was wenig überraschend ist, da das Feature das Spannungsfeld zwischen Safety und Performance thematisiert. Seit diesem Meeting steht zur Debatte, ob Contracts möglicherweise auf C++29 verschoben werden müssen.
Michael war mit zwei Paper in Tokyo:
- P2721R0: Deprecating function schlug vor, die Klasse std::function as veraltet zu markieren, da die Klasse std::copyable_function (ebenfalls von Michael eingebracht und bereits akzeptiert) in Zukunft den Vorzug erhalten sollte. Das Feedback für dieses erwartet(!) kontroverse Thema war zweiteilig: Einerseits bestand Konsens darüber, dass dies in der Zukunft gemacht werden sollte, jedoch bestand kein Konsens dies bereits in C++26 zu tun. Michael wird das Thema in ein paar Jahren wieder aufbringen, wenn an C++29 gearbeitet wird und mehr Erfahrungsberichte von Nutzern bezüglich der notwendigen Portierungen vorliegen.
- P3044R0: sub-string_view from string schlägt einen einfacheren Weg vor, auf einen Teil einer Zeichenkette zu verweisen, ohne eine Kopie zu erstellen. Das Paper wurde im Vorfeld des Meetings auf ein Onlinemeeting im April vertagt, erste informelle Feedbacks waren allerdings sehr positiv. Die im Paper enthaltene Frage nach Interesse zu einem Folgepaper, welches ähnliches für kontinuierliche Container einführt, kann aktuelle noch nicht abgeschätzt werden.
Das nächste Meeting, an dem Michael nur remote teilnehmen wird, findet im Juni in St. Louis (MO), USA statt.
Danach folgt die „C++ Europa Tour“:
- November 2024: Breslau, Polen
- Februar 2025: Hagenberg, Österreich
- Juni 2025: Sofia, Bulgarien
- Das letzte Meeting für 2025 wurde ebenfalls bereits festgelegt und findet im November 2025 in Kona (HI), USA statt.
Über das Face-to-Face Meeting
Von 18. bis 23. März fand in Tokyo, Japan ein Face-to-Face-Meeting des C++ Komitees statt. Michael Hava, Senior Software Developer und C++-Koryphäe der RISC Software GmbH, ist Teil dieses Komitees und nahm daher an diesem Meeting teil.
Links
Über Michael Hava
Michael Hava, Senior Software Developer und C++-Koryphäe der RISC Software GmbH, ist Teil des C++-Standardisierungs-Komitees. Er kam 2011 während seines Masterstudiums an der Fachhochschule Oberösterreich – Campus Hagenberg zu RISC Software. Seitdem hat er die Einführung von modernem C++ in verschiedenen Bereichen der Technik gefördert. Mit dem Ziel, diese Förderung auf die Ausbildung auszuweiten, kehrte er 2016 als Teilzeit-Dozent an seine ehemalige Fachhochschule zurück. Nach der Teilnahme an seiner ersten C++-Standardisierungssitzung im Jahr 2019 wurde er Gründungsmitglied der österreichischen C++-Arbeitsgruppe und fungiert als Vorsitzender des nationalen Gremiums. Er bleibt die meiste Zeit in der LEWG und mehrere seiner Papers sind bereits für C++26 angenommen.
Ansprechperson
Michael Hava, MSc
Senior Software Architect