Parallel Algorithm of the Standard Template Library

The idea is quite simple. The Standard Template has more than 100 algorithms for searching, counting, and manipulation of ranges and their elements. With C++17, 69 of them are overloaded and a few new are added. The overloaded and new algorithm can be invoked with a so-called execution policy. By using the execution policy, you can specify whether the algorithm should run sequential, parallel, or parallel and vectorized.

 

Read more
Tags: C++17
Comments 1Views: 9849

Multithreading with C++17 and C++20

Forecasts about the future are difficult. In particular, when they are about C++20. Nevertheless, I will take a look into the crystal ball and will write in the next posts about, what we will get with C++17  and we can hope for with C++20.

Read more
Tags: C++20, C++17
Comments 1Views: 13216

Expression Templates

Expression templates are "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, now we are in the centre of lazy evaluation and in the centre of this post.

Read more
Add CommentViews: 2591

C++ is Lazy: CRTP

In my previous post Recursion, List Manipulation and Lazy Evaluation I wrote about the characteristics of functional programming:  The story about lazy evaluation in C++ is short. Sorry to say but I have forgotten templates. The two advanced techniques CRTP and expression templates are based on lazy evaluation.

Read more
Tags: templates
Comments 2Views: 4333

Six Vouchers to Win

Ivan Cukic is currently writing a book on "Functional Programming in C++" for Manning Publication. Currently, 4 out of 14 chapters are published under the Manning Early Access Program. A new chapter is planned to appear each month. Here are the details of his book.

Read more
Add CommentViews: 2294

Monads in C++

Monads in C++? What a strange name for a post. But it's not so strange. With std::optional C++17 gets a monad. The ranges library from Eric Niebler and the extended futures are also monads. For both, we can hope for in C++20.

Read more
Tags: C++20
Comments 3Views: 6212

Concepts

We stay in the year 2020. We will get with high probability concepts. Of course, waterproof statements about the future are difficult but the statement is from Bjarne Stroustrup (Meeting C++ 2016 at Berlin).

Read more
Comments 1Views: 4492

My Newest E-Book

Latest comments

Subscribe to the newsletter (+ pdf bundle)

Blog archive

Source Code

Visitors

Today 355

All 329889

Currently are 171 guests and no members online