Mittwoch, 9. Juli 2014

Julitreffen 2014

Liebe C++-Freunde,

morgen, den 10.7., treffen wir uns wie gewohnt gegen 20:00 Uhr in der Wu5. Da wir diesmal keinen Vortragenden haben, werden wir wieder einen Videoabend veranstalten. Und zwar mit einem Video von Scott Meyers, der auf der D-Konferenz über C++ ablästert. Der Inhalt führte zu Anfeindungen in der Mailing-Liste des Standardkomitees, aber anders als ich erwartet hätte.

Damit ich zur Diskussion einladen möchte, wie schlimm C++ wirklich ist. Sind die Beispiele wirklich in der Praxis relevant oder nur intellektuelle Sticheleien? Beziehungsweise, was sind die wirklichen Probleme im Alltag? Und könnte man realistischerweise etwas dagegen unternehmen?

Bis morgen,
Peter

Freitag, 6. Juni 2014


Junitreffen 2014

Liebe C++-Freunde,

im Juni treffen wir uns am Donnerstag den 12. wie gewohnt gegen 20:00 Uhr in der Wu5. Mario Bielert wird die Vor- und Nachteile der uniformen Initialisierung vorstellen.

Frohe Pfingsten,
Peter

Uniforme Initialisierung

C++11 bietet eine uniforme Initialisierung, die für Konstruktoren mit und ohne Initialisierungslisten und auch ganz archaische Klassen ohne Konstruktor verwendet werden kann. Viele C++-Experten (einschließlich Bjarne selbst) sind so euphorisch über dieses neue Feature, dass sie es überall einsetzen. Nach einer kurzen Übersicht über die Regeln werden wir uns ein paar Beispiele ansehen, gegenüber C++98 radikal vereinfacht wurden. Leider steckt wie immer der Teufel im Detail und nervraubende Subtilitäten müssen berücksichtigt werden. Als Konsequenz verhalten sich einige Programme anders als erwartet und die Implementierung generischer Funktionen gerät zu einer echten Herausforderung. Abschließend wollen wir (gemeinsam) diskutieren, wo uniforme Initialisierung sinnvoll ist und wo nicht.

Montag, 5. Mai 2014

Maitreffen 2014

Liebe C++-Freunde,

im Mai treffen wir uns am 8. wie gewohnt gegen 20:00 Uhr in der Wu5. Fabio Fracassi kommt aus Berlin zu uns, um das C++-Speichermodell vorzustellen. Die Ankündigung und die Folien sind englisch, aber ich werde ihn davon überzeugen, den Vortrag auf deutsch zu halten. Entschuldigt bitte die späte Ankündigung. Ich hoffe, dass es trotzdem viele bis Donnerstag einrichten können.

Viele Grüße,
Peter

C++ Memory Model

The C++ memory model defines how multiple threads interact with memory and shared data, enabling developers to reason about concurrent code in a platform independent way. The talk will explain multi-threaded executions and data races in C++, how concurrent code is affected by compiler and hardware optimizations, and how to avoid undefined behavior by using locks and atomic operations. Then we focus on different memory orders for atomic operations, their guarantees and performance implications.