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.

Freitag, 4. April 2014

Apriltreffen 2014

Liebe C++-Freunde,

im April treffen wir uns am 10. wie gewohnt gegen 20:00 Uhr in der Wu5. Der Vortragende wird diesmal Mario Mulanski sein. In diesmm Vortrag wird er die Bibliothek vorstellen, in der die Metaprogrammierungstechniken verwendet werden, die er in seinem ersten Vortrag vorgestellt hat.

Bis dann,
Peter

Boost.Odeint: Solving ODEs in C++ 

Gewöhnliche Differentialgleichungen (Ordinary Differential Equations - ODEs) sind ein grundlegendes Hilfsmittel zur Modellierung natürlicher Vorgänge in allen erdenklichen Wissenschaftsbereichen. In den meisten Fällen kann die ODE nicht analytisch gelöst werden und es muss auf numerische Verfahren zurückgegriffen werden. Boost.Odeint ist eine moderne C++-Bibliothek, die eine Sammlung solcher numerischer Verfahren bereitstellt. Das durchdachte Design und die Verwendung von modernen C++-Techniken erlauben den vielfältigen Einsatz von Boost.Odeint. Im Vortrag wird das grundlegende Design der Bibliothek erläutert sowie die vielfältigen flexiblen Einsatzmöglichkeiten anhand von etlichen Beispielen gezeigt.

Montag, 3. März 2014

Märztreffen am 13.3.14


Wie gewohnt treffen wir uns gegen 20:00 Uhr in der Wu5. Diesmal wird Armin einen Vortrag halten zum Thema:

Compilerbau mit C++


Für den ambitionierten Compiler-Entwickler gibt es, von Scanner- und Parsergeneratoren bis zu Frameworks für Baumtransformationen, etliche Tools, die einem auch unter C++ das Leben erleichtern wollen. Der Vortrag  soll dabei helfen, den Grundaufbau eines typischen Compilers zu verstehen und praktische Fragen bei der Auswahl eines Compiler-Tools beantworten, z.B.: Ist ein LL(k)- oder ein LALR-Parser besser? Kann ich den Parser nicht auch komplett von Hand schreiben? Welcher Parser-Generator generiert den schnellsten Code? Zur Entspannung wird es auch ein paar Code-Schnipsel und Syntaxbäume zu sehen geben.

Bis dahin,
Peter

Sonntag, 9. Februar 2014

Februartreffen 2014

Liebe C++-Freunde,

im Februar treffen wir uns am 13. wie gewohnt gegen 20:00 Uhr in der Wu5. Da sich kein Freiwilliger für einen Vortrag gemeldet hat, bzw. die Willigen im Februar ihre Vorträge noch nicht fertig haben, schlage ich einen Video-Abend vor. Dazu würde ich Scott Meyers Kampfrede über universelle, l- und r-Wert-Referenzen runterladen. Anschließende können wir noch darüber diskutieren, wobei die Anwesenden dann sich Scott anschließen können und mit über das Standardkomitee wettern oder umgekehrt an Scott rumnörgeln. Oder sich auch komplett der Meinung enthalten. Falls uns das Videogucken zu langweilig wird, können wir es auch vorzeitig abbrechen.

Die große Herausforderung des Abends wird natürlich an den Nazis und deren Gegenspielern vorbeizukommen. Leider konnten wir uns beim letzten Treffen wegen der Winterferien auch auf keinen anderen Termin einigen.

Bis Donnerstag,
Peter G.

P.S.: Aus Begeisterung über unsere neue Mailingliste (cppdd@googlegroups.com) habe ich das Januartreffen nur auf der Mailingliste angekündigt und nicht im Blog. Dafür möchte ich mich hiermit entschuldigen.

Mittwoch, 27. November 2013

Dezembertreffen am Do 12.12.2013

Liebe C++-Freunde,
am 12.12. um 20:00 Uhr in der Wu5 ist es wieder soweit: User Group Zeit!

Und ob der schönen Adventszeit werde ich der Vererbung in C++ mal ganz genau unter das Weihnachtsmannkostüm schauen. Es wird um virtuelle Vererbung unter dem Gesichtspunkt "Performance" gehen und schließlich in der Vorstellung des
CRTP-Patterns 
münden. Da mir das nicht ganz reicht, werde ich dann noch
Expression Templates
vorstellen und zeigen, wie beide Programmier-Muster in der Eigen-Matrixalgebrabibliothek benutzt wird, um performanten und dennoch strukturierten Code zu erzeugen.

Ich freue mich schon.
Bis dahin -
Peter St.

Die Folien des Vortrags sind via Scribd einzusehen:

Lightweight Abstractions in C++, An Introduction to CRTP and Expression Templates


Wer Zugang zum Quelltext haben moechte, wendet sich bitte an mich (Peter Steinbach) oder die Organisatoren der User Group.