Entries by Rainer Grimm

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.

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.

Concepts

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

The New Ranges Library

A small-time jump, and we are in the year 2020. C++ will get – as far as the future is predictable – the new ranges library. Thanks to Eric Nieblers library, working with the Standard Template Library (STL) will become more comfortable and powerful.  

Fold Expressions

With fold expressions, you can implement Haskell functions foldl, foldr, foldl1, and foldr1 directly in C++. These four functions successively reduce a list to a single value.

Immutable Data

A key to purely functional languages is that their data are immutable. Therefore, assignments such as x= x+1 or ++x are not possible in the purely functional language Haskell. The consequence is that Haskell supports no loops like for, while, or until. They are based on the modification of a loop variable. Haskell does not […]