31:45 C++ in a nutshell: "... and we can collapse it all down and replace it with one pair of every kind of brackets, and we get something called a generic lambda. Notice that our template parameter T has disappeared, and instead I'm just writing "auto". This is special syntactic sugar, this is not necessarily obvious but "auto" has something to do with type deduction, type inference. So here, when I write "auto" in the parenthesis, it's not the same "auto" that you would see somewhere else ... This is just a shorthand indicating that this lambda's call operator that takes an argument named "x" is actually a template." 😂😭
As a embedded C programmer, I find it is very interesting. Great effort to reduce the size of code segment. But I feel intimidated by the varity and vastness of coding syntax to remember in C++. C syntaxes are still very small and easy to remember. I am not sure if it is only me feeling this way.
I agree, I came to C++ from C, since my company used it extensively. But imo, you don't need to know every single detail of C++ to use it pretty effectively. It gives a lot of freedom in designing your solution to a problem, and you generally are able to find several, which all use different features.
At 22:30 I understand the eye rolls some emit when they hear others say "Aren't lambdas just new syntax for function pointers?" -- maybe approximately if no captures take place, otherwise, no.
Are people really expected to be able to write code with all this syntactic/semantic complexity ? How many years are they expected to study C++ before they can do anything?
Having watched some other Arthur O'Dwyer cppcon talks I thought you were being defeatist, but dang, this is for sure a "watch three times" video. Hats off to anyone who didn't know this already that learns everything on one viewing.
Thanks so much for the back to basics series! As a beginner, it has helped me immensely in learning C++. I especially love Arthur’s talks!
Great to hear!
I think that everyone can learn something important from "Back to Basics" talks. Even speakers themselfs. 😉
31:45 C++ in a nutshell: "... and we can collapse it all down and replace it with one pair of every kind of brackets, and we get something called a generic lambda. Notice that our template parameter T has disappeared, and instead I'm just writing "auto". This is special syntactic sugar, this is not necessarily obvious but "auto" has something to do with type deduction, type inference. So here, when I write "auto" in the parenthesis, it's not the same "auto" that you would see somewhere else ... This is just a shorthand indicating that this lambda's call operator that takes an argument named "x" is actually a template." 😂😭
This is an EXTREMELY good talk. What an absolute legend
As a embedded C programmer, I find it is very interesting. Great effort to reduce the size of code segment. But I feel intimidated by the varity and vastness of coding syntax to remember in C++. C syntaxes are still very small and easy to remember. I am not sure if it is only me feeling this way.
No, you’re not alone. I am also an embedded C programmer. I feel the same. C++ is vast and confusing.
I agree, I came to C++ from C, since my company used it extensively. But imo, you don't need to know every single detail of C++ to use it pretty effectively. It gives a lot of freedom in designing your solution to a problem, and you generally are able to find several, which all use different features.
Friendly to c++ to a newbie!
At 22:30 I understand the eye rolls some emit when they hear others say "Aren't lambdas just new syntax for function pointers?" -- maybe approximately if no captures take place, otherwise, no.
finally a clear and concise explanation
crisp.. no nonsense... just what is required to know lambda.
Nicely explained, especially for c programmers. Clear and simple way to understand lambdas.
Loud and clear!
Excellent talk, thank you!
Glad it was helpful!
great talk, finally somewhat understanding lambdas. thank you!
Awesome talk !! good explaining, very clear
Glad it was helpful!
23:25 This explains well, why I abhor implicit conversion in C++.
Question - why Recursive Lambdas was left out ?
Another excellent talk Arthur. I have been using Plusme analogy whenever I get stuck
C++ 23 will likely allow them
Wow! Thanks a lot! Now I understand lambdas.
You are most welcome
they seem quite useful but incredibly hard to read or interpret sometimes.
20:30 Why this code is written using stdio.h and printf, that are taken stright from C?
this was an excellent talk. Thanks
Great talk, thanks!
Glad you enjoyed it!
Great talk
bro, you're incredible!
0:15 could someone please share the feedback site? I can't see it in the description. Thank you!
I think this was just for the conference attendees
Are people really expected to be able to write code with all this syntactic/semantic complexity ?
How many years are they expected to study C++ before they can do anything?
Having watched some other Arthur O'Dwyer cppcon talks I thought you were being defeatist, but dang, this is for sure a "watch three times" video. Hats off to anyone who didn't know this already that learns everything on one viewing.
Need... to.... resist...
Errata @22:01 . The code shown at 22:01 is ill-formed.
Awesome thanks!!
excellent talk!
Excellent
There are type error at 13:28. vector v is undefined. This is shelf.
It's slideware but yeah… Guess it's an oversight. It happens.
11:35 As person whoes learn lambdas in Lisp, when I hear something like "Lambda is conceptualy like instance of the class" I cringe.
At 39:00, you mention [this,&] and [this,=], but it does not compile on a recent gcc compiler (11)
well that's expected
18:04 Many redundant shorthands
the puzzle is not correct,g value is 11 all along
I enjoyed Arthur O'Dwyer's talk, but I think lamdas design in C++ is mediocre at best.
This talk is great, but lambdas notation in C++ is awful. For me it is such a big step back from the Lisp family.
Great talk!
great talk! Thanks!