Louis Dionne - Keynote Meeting C++ 2016 - C++ Metaprogramming: evolution and future direction
And the second keynote of Meeting C++ 2016 is on youtube:
C++ Metaprogramming: evolution and future direction
by Louis Dionne
June 8-13, Brno, Czechia
June 17-20, Folkestone, UK
September 12-18, Aurora, CO, USA
November 16-21, Búzios, Rio De Janeiro, Brazil
November 26-28, Berlin, Germany
By Meeting C++ | Dec 5, 2016 08:23 AM | Tags: tmp metaprogramming intermediate experimental c++20 c++17 c++14 advanced
And the second keynote of Meeting C++ 2016 is on youtube:
C++ Metaprogramming: evolution and future direction
by Louis Dionne
By Adrien Hamelin | Nov 29, 2016 02:14 PM | Tags: experimental community
C++17 makes a new step.
Trip Report: C++ Standards Meeting in Issaquah, November 2016
by Botond Ballo
From the article:
Last week I attended a meeting of the ISO C++ Standards Committee (also known as WG21) in Issaquah, Washington (near Seattle). This was the third and final committee meeting in 2016; you can find my reports on previous meetings here (February 2016, Jacksonville) and here (June 2016, Oulu), and earlier ones linked from those. These reports, particularly the Oulu one, provide useful context for this post...
By Adrien Hamelin | Nov 28, 2016 12:37 PM | Tags: experimental community
The new GoingNative is out!
GoingNative 55: ISO C++ @Issaquah Debriefing
by Steve Carroll, Augustin Popa and Bryan DiLaura
From the video:
In this episode of GoingNative, Steve Carroll chats with Gabriel Dos Reis and Gor Nishanov about what happened at the C++ standards meeting in Issaquah, Washington.
By Adrien Hamelin | Nov 28, 2016 12:33 PM | Tags: experimental advanced
With the next version of C++.
Compose and curry as folds
by Nick Athanasiou
From the article:
In a previous post we introduced C++17 fold expressions and described a way to extend them for arbitrary callables. Implementation details don’t matter for what we’re elaborating on here but it should be clear that (given the tools we developed) the following is possible:
(Op<F>(args) + ...) (... + Op<F>(args))
By Adrien Hamelin | Nov 22, 2016 01:12 PM | Tags: intermediate experimental
Did you know?
More About Variadic Templates
by Arne Mertz
From the article:
I gave an introduction to variadic templates last week. Today I will talk about some more features that have or will be added in that area in C++11, 14 and 17.
By Meeting C++ | Nov 7, 2016 03:44 AM | Tags: experimental basics
I was doing some research on possible live formats...
Collaborative Online Compilers
by Jens Weller
From the article:
While doing some brainstorming for possible (youtube) live formats with C++ content, the thought of having a shared online IDE/Compiler came into my mind. Think of Google Docs but for C++...
By Adrien Hamelin | Nov 4, 2016 01:09 PM | Tags: experimental advanced
An introduction to the world of C++17.
checking expression validity in-place with C++17
by Vittorio Romeo
From the article:
When writing generic code, it is sometimes useful to check whether or not a particular SFINAE-friendly expression is valid (e.g. to branch at compile-time). Let's assume that we have the following class declarations...
struct Cat { void meow() const { cout << "meow\n"; } }; struct Dog { void bark() const { cout << "bark\n"; } };...and that we would like to write a template function
make_noise(x)that callsx.meow()and/orx.bark()if they are well-formed expressions:template <typename T> void make_noise(const T& x) { // Pseudocode: /* if(`x.meow()` is well-formed) { execute `x.meow();` } else if(`x.bark()` is well-formed) { execute `x.bark();` } else { compile-time error } */ }In this article I'll show how to implement the pseudocode in:
C++11: using
std::void_tandstd::enable_if.C++14: using
boost::hana::is_validandvrm::core::static_if.C++17: using
if constexpr(...), constexpr lambdas, andstd::is_callable. This version will allow expression validity to be checked in-place (i.e. directly in the if constexpr predicate). Variadic preprocessor macros will also be used to make the user code easier to read and maintain...
By Adrien Hamelin | Nov 4, 2016 12:53 PM | Tags: intermediate experimental
Are the rules clear to you?
Getting your head around auto’s type-deduction rules
by Glennan Carnie
From the article:
Automatic type-deduction is perhaps one of the more divisive features of Modern C++. At its core it’s a straightforward concept: let the compiler deduce the type of an object from its initialiser. Used in the right way this can improve the readability and maintainability of your code.
However, because auto is based on template type-deduction rules there are some subtleties that can catch the unwary programmer.
In this article we’ll have a look at auto in the context of the template type-deduction rules to see where all these subtleties come from...
By Adrien Hamelin | Nov 1, 2016 12:02 PM | Tags: experimental community
This is a useful Reddit thread for those looking for suggestions on where to start, or just what highlights they might have missed so far, in the >100 CppCon 2016 videos...
Best CppCon 2016 Talks?
By Adrien Hamelin | Oct 12, 2016 10:43 AM | Tags: experimental community
An interesting talk!
Bjarne Stroustrup Interview at cppcon 2016
Sum up:
Steve Carroll and Gabriel Dos Reis chat with Bjarne Stroustrup, the inventor of C++, about his keynote this year at cppcon 2016. Bjarne talks about the past, present, and future of C++, and how to be a good programmer.