Data oriented design in practice - Stoyan Nikolov - Meeting C++ 2018
A talk on data oriented design with realworld examples
Data oriented design in practice
by Stoyan Nikolov
March 19-21, Madrid, Spain
April 1-4, Bristol, UK
June 16-21, Sofia, Bulgaria
By Meeting C++ | Jan 26, 2019 08:10 AM | Tags: meetingcpp intermediate c++14 c++11 basics advanced
A talk on data oriented design with realworld examples
Data oriented design in practice
by Stoyan Nikolov
By Adrien Hamelin | Jan 25, 2019 12:33 PM | Tags: intermediate c++11
Is it simpler that way?
C++ moves for people who don’t know or care what rvalues are
by Topher Winward
From the article:
When I was first learning about move semantics in C++, I kept reading articles that explained in terms of other scary sounding jargon — lvalues, rvalue references, memcpy, ownership. None of these things are strictly necessary to know about to understand the core of move semantics. (Though, the more you learn about them, the greater your understanding of move semantics will become.)
You may have heard of move semantics, and may know that they’re “faster”, but not why, or even how to move something. (Here “moves” and “move semantics” mean the same thing.)
This article will deliberately simplify or ignore some concepts (like constructors, rvalue references, stack vs heap) to make the core idea of moving easier to follow, so don’t worry if you already know this stuff and see something that isn’t technically correct. I’ll mark clarifications for these with a number. This article is aimed at those writing everyday (non-library) code, with little to no existing understanding of move semantics, to help get over the initial conceptual hurdle...
By Meeting C++ | Jan 20, 2019 07:33 AM | Tags: meetingcpp intermediate c++17 c++11 advanced
New video from Meeting C++ 2018
Taming dynamic memory
by Andreas Weis
By Meeting C++ | Jan 18, 2019 06:54 AM | Tags: tmp reflection meetingcpp intermediate experimental c++14 advanced
First talk from Meeting C++ is released:
Better C++14 reflections
by Antony Polukhin
By Adrien Hamelin | Jan 17, 2019 01:24 PM | Tags: intermediate community
In one word.
The pImpl Idiom
by Arne Mertz
From the article:
The pImpl idiom is a useful idiom in C++ to reduce compile-time dependencies. Here is a quick overview of what to keep in mind when we implement and use it...
By Adrien Hamelin | Jan 14, 2019 02:13 PM | Tags: intermediate c++17
Short and clear.
C++17: std::scoped_lock
by Marc Gregoire
From the article:
C++17 includes an std::scoped_lock (defined in <mutex>) which basically replaces std::lock_guard...
By Meeting C++ | Jan 13, 2019 12:18 PM | Tags: meetingcpp intermediate experimental community advanced
The Center Keynote by Lisa Lippincott from Meeting C++ 2018
The Truth of a Procedure
by Lisa Lippincott
By Meeting C++ | Jan 12, 2019 12:45 PM | Tags: meetingcpp intermediate experimental efficiency c++17 basics advanced
Andrei Alexandrescus Opening Keynote from Meeting C++ 2018
The next big Thing
by Andrei Alexandrescu
By Jason Turner | Jan 9, 2019 03:12 PM | Tags: intermediate c++20 advanced
Episode 149 of C++ Weekly.
C++20's Lambda Usability Changes
by Jason Turner
About the show:
C++20 brings many different changes to lambdas, and two of these changes greatly affect the ways in which lambdas can be used. In this episode Jason discusses the use of lambdas in unevaluated contexts and the default constructability of lambdas in C++20.
By Adrien Hamelin | Jan 7, 2019 12:12 PM | Tags: intermediate community
Nothing is perfect.
Functional Programming Is Not a Silver Bullet
by Jonathan Boccara
From the article:
The past few years have seen a boost in popularity of the functional programming paradigm. Languages that were used mostly in academic circles for decades are now in broader use amongst programmers. And every couple of months, another functional language hits the news and gets its trail of followers.
Why is that? Functional programming allow for safer and more robust code, in part due to one of its core principles: values are not mutable. A consequence of this is that there is no side effects. We can apply this principle in any language, including in C++, by coding with the least side effects possible.
While it certainly helps putting together a better design of code, it’s important to realize that it’s not the panacea, that this principle doesn’t solve in itself all design issues. Nothing is the panacea anyway, but in this time of gold rush towards functional programming, we could be tricked into thinking it will automatically lead to good design.
Functional programming is known to reduce coupling in code. We’ll briefly go over what coupling is, what sort of coupling functional programming prevents, and how some other dangerous forms of coupling can still sneak in even with functional programming. You want to pay attention to those to preserve the design of your code...