Concepts definieren

Ich schrieb schon ein paar Artikel über Concepts. Concepts sind Anforderungen, die Namen besitzen. In diesem Artikel definiere ich ein paar Concepts.

Weiterlesen...
Gelesen: 10674

Placeholders - Die Zweite

Die Vereinheitlichung von Templates, Concepts und Platzhaltern geht weiter. Dieses Mal werde ich einen genaueren Blick auf eingeschränkte (Concepts) und uneingeschränkte (auto) Platzhalter in Zusammenhang mit Templates werfen.

Weiterlesen...
Gelesen: 8213

Concepts - Placeholders

C++11 kennt mit auto unconstrained placeholders. Concepts in C++20 können als constrained placeholders verwendet werden. Was sich auf den ersten Blick nicht besonders spannend anhört, ist für mich der entscheidende Quantensprung, Templates als einfaches C++ Sprachmittel zu etablieren.

Weiterlesen...
Gelesen: 12145

Expression Templates

Expression Templates sind "structures representing a computation at compile time, which structures are evaluated only as needed to produce efficient code for the entire computation" (https://en.wikipedia.org/wiki/Expression_templates). As needed, damit sind wir mitten in der Bedarfsauswertung und in diesem Artikel.

Weiterlesen...
Tags: Templates
Gelesen: 11062

C++ ist doch lazy!

In meinem Artikel Rekursion, Verarbeitung von Listen und Bedarfsauswertung zu den Charakteristiken der funktionalen Programmierung habe ich geschrieben: Die Geschichte der Bedarfsauswertung in C++ ist kurz. Leider habe ich meine Rechnung ohne Templates gemacht. Die zwei fortgeschrittene Template Techniken CRTP und Expression Templates basieren auf der Bedarfsauswertung.

Weiterlesen...
Tags: Templates
Gelesen: 17864

Monaden in C++

Monaden in C++? Was für ein seltsamer Titel für einen Artikel. Doch so seltsam ist er gar nicht. Mit std::optional wird C++17 um eine Monade erweiterte. Die Ranges-Bibliothek von Eric Niebler und die erweiterten Futures, auf die wir in C++20 hoffen dürfen, sind Monaden.

Weiterlesen...
Gelesen: 14611

Concepts Lite

Wir bleiben im Jahr 2020. Mit C++20 werden wir Concepts Lite erhalten. Auch wenn verlässliche Aussagen über die Zukunft schwierig sind, so besitzt diese Aussage doch eine sehr hohe Wahrscheinlichkeit einzutreffen. Sie stammt aus dem Munde von Bjarne Stroustrup (Meeting C++ 2016).

Weiterlesen...
Tags: Concepts
Gelesen: 11001

Die neue Ranges Bibliothek

Ein kleiner Zeitsprung und wir sind im Jahr 2020. Mit C++20 wird - soweit sich die Zukunft voraussagen lässt - C++ um die neue Ranges-Bibliothek erweitert. Mit der Range-Bibliothek von Eric Niebler wird das Arbeiten mit den Containern deutlich komfortabler und mächtiger. 

Weiterlesen...
Tags: Monaden
Gelesen: 11806

Fold Expressions

Mit Fold Expressions lassen sich die aus Haskell bekannten Funktionen foldl, foldr, foldl1 und foldr1, die eine Liste sukzessive auf einen Wert reduzieren, direkt in C++ umsetzen.

Weiterlesen...
Gelesen: 10533

Abonniere den Newsletter (+ pdf Päckchen)

Beiträge-Archiv

Sourcecode