February 2020

C++20: The Ranges Library--Rainer Grimm

One big of c++20.

C++20: The Ranges Library

by Rainer Grimm

From the article:

Thanks to the ranges library in C++20, working with the Standard Template Library (STL) will become much more comfortable and powerful. The algorithms of the ranges library are lazy, can work directly on the container and can easily be composed. To make it short: The comfort and the power of the ranges library are due to its functional ideas. Let me show you what that means...

CopperSpice: Moving to C++17

New video on the CopperSpice YouTube Channel:

Moving to C++17

by Barbara Geller and Ansel Sermersheim

About the video:

In this video, we look at some of the significant improvements that were added to the language in C++17, and how they can apply to your code base. We also present some interesting questions you might want to ask, or be able to answer, in an interview for a position using C++17.

Please take a look and remember to subscribe!

Large-Scale C++: Process and Architecture --- John Lakos

Writing reliable and maintainable C++ software is hard. Designing such software at scale adds a new set of challenges. Creating large-scale systems requires a practical understanding of logical design — beyond the theoretical concepts addressed in most popular texts. To be successful on an enterprise scale, developers must also address physical design, a dimension of software engineering that may be unfamiliar even to expert developers. How do you do this?

Large-Scale C++ Volume I: Process and Architecture

by John Lakos

From the article:

Drawing on over 30 years of hands-on experience building massive, mission-critical enterprise systems, John Lakos lays the foundation for projects of all sizes and demonstrates the processes, methods, techniques, and tools needed for successful real-world, large-scale development.

Up to date and with a solid engineering focus, this book demonstrates fundamental design concepts with concrete examples.

This book, written for fellow software practitioners, uses familiar C++ constructs to solve real-world problems while identifying (and motivating) modern C++ alternatives.

C++20 is Done!


C++20 is Done!

From the article:

C++20, the most impactful revision of C++ in a decade, is done! ������

Overload 155 is now available

ACCU’s Overload journal of February 2020 is out. It contains the following C++ related articles.

Overload 155 is now available

From the journal:

Members and Remembrances.
Remembering things can be difficult. Frances Buontempo reminisces on routes to erudition.

A line-to-line conversion from Node.js to Node.cpp.
Dmytro Ivanchykhin, Sergey Ignatchenko and Maxim Blashchuk show how we can get a 5x improvement in speed.

The Path of Least Resistance.
Python’s modules and imports can be overwhelming. Steve Love attempts to de-mystify the process.

Quick Modular Calculations(Part 2).
The minverse algorithm previously seen is fast but has limitations. Cassio Neri presents two alternatives.

A Secure Environment for Running Apps?.
Getting apps from the app store is easy. Alan Griffiths considers this from a security perspective.

The centre half is more than a sporting term. Chris Oldwood shows us why.

A short video from Prague: C++20 is here!

Here's a 9-minute taste of what it was like to be at the Prague meeting, with attendees talking about their favorite highlights of C++20...


Zero, one, two, Freddy's coming for you

The article might be of interest for authors of books, articles, and C++ coding standards. Based on the given material, you can discuss questions of C++ code quality and ways how to reduce the likelihood of errors' occurence.

Zero, one, two, Freddy's coming for you

by Andrey Karpov

From the article:

This post continues the series of articles, which can well be called «horrors for developers». This time it will also touch upon a typical pattern of typos related to the usage of numbers 0, 1, 2. The language you're writing in doesn't really matter: it can be C, C++, C#, or Java. If you're using constants 0, 1, 2 or variables' names contain these numbers, most likely, Freddie will come to visit you at night. Go on, read and don't say we didn't warn you.


Reverse For Loops in C++--Carlos Buchart

How do you do it?

Reverse For Loops in C++

by Carlos Buchart

From the article:

As we saw when working on dynamic bitsets, it can be useful to traverse a collection backwards, from its last element to its first one.

It would be nice to be able to use C++11 range for loops to iterate backwards. But unfortunately, there is no such reverse range-for: range-for only works forwards.

Let’s see how to traverse a collection backwards by using a range for loop...

Five Awesome C++ Papers for the Prague ISO Meeting and C++20 Status--Bartlomiej Filipek

Did you know them?

Five Awesome C++ Papers for the Prague ISO Meeting and C++20 Status

by Bartlomiej Filipek

From the article:

Continuing the tradition for other ISO C++ Meetings, I prepared a blog post where you’ll learn about:

  • The current status of C++20
  • an overview about the Prague ISO C++ Meeting (10th till 15th February 2020)
  • a few interesting papers that are worth reading

Let’s start!