Pure magic. Fantastic presentation, thank you Andrei.
@RoibarkanАй бұрын
10:01 Herb Sutter’s talk: kzbin.info/www/bejne/fH_MYmCuadWioNU (with Alexandrescu cameo)
@JohnDlugoszАй бұрын
37:00 Re: Hobbs The ship that Theseus kept swapping parts out of retains its original VIN (Vehicle Identification Number) and is legally Theseus's ship. The one that Hobbs assembled from salvage needs to be registered at the DWPV (Department of Wind-Powered Vehicles) and get a new VIN. To be period-correct, Hobbs would need to obtain a new ΣΠ (Σήμα Πλοίου) at the ΤΠΠΟ (Τμήμα Πλοίων Πνεύματος Όλμων). The definition of "same ship" vs "new ship" is both well-defined and ancient. To show that this is ultimately a matter of definition, consider Microsoft's licensing of Windows. If you swap out one part, like the hard drive, it's recognized as the same PC. But if you swap out three parts-or the wrong part-your license verification might fail, treating it as a new *PC*. (That's my personal experience-Microsoft's exact rules are undocumented and likely change over time.) You used to be able to call Microsoft and explain, "I just got a new hard drive," and they’d restore your license. This shows that there’s no objectively well-defined answer-it’s whatever the bureaucrats (or tech support) have on file. Ultimately, it’s less about an objective set of rules and more about the authority defining that specific case.
@matrixstuff3512Ай бұрын
Andrei has got to me one of my favorite speakers of any topic
@stratula1Ай бұрын
Great speech. Thanks for sharing!
@ethanevans8909Ай бұрын
Andrei talks are always so fun
@dexterman6361Ай бұрын
This talk was great! I was playing around with reflection and when I realized that I couldn't craft functions for the type I was constructing, it felt weird. But I guess something is better than nothing, as C++ is perhaps 26 years too late to the party, any later would be bad.
@mishadjukic8904Ай бұрын
Very useful talk. The point with identity - the disassembly and reassembly - is powerful indeed. Two comments: - Another version of “Ship of Theseus”: kzbin.info/www/bejne/gnLLaXuorruUm7s - On slide 6, the order of arguments of “property” does not match the order of parameters on slide 14 (where definition of “property” is given).
@bawbeАй бұрын
gonna be that nerd, pretty sure it's not future subjunctive... I believe it's future perfect... :D @ 8:55
@nicolasbertrand3932Ай бұрын
got me thinking.. there is future subjunctive in ..english? how that guy was so sure ...
@japedrАй бұрын
queue_injection? Why not code_injection instead?
@JohnDlugoszАй бұрын
Because it's not injected into the `property` function in-place. It goes back where the head of the source parsing is.
@jhk578Ай бұрын
I like to use reflection but there is something I’m worrying about. Debuggability, I wonder when would we get this thing in a debuggable manner. 2030 seems high expectation😢
@JohnDlugoszАй бұрын
I think the practicality of generation based on token sequences and constexpr functions can be well-informed by the LISP folks, who use this model, and have used it for decades. Common Lisp predates C++. Scheme is even older.
@driedurchinАй бұрын
This looks a lot like Rust's procedural macros from a usability standpoint, is `queue_injection` fundamentally different from `quote!`?
@minefun0rusАй бұрын
11:53 Let's be honest, we don't need setters/getters here at all: ``` struct Book { std::string author; std::string title; }; ```
@JohnDlugoszАй бұрын
Yes, he covered that immediately after; explaining it's a toy example.
@finallyfedupwithpeopleАй бұрын
It's a shame that Circle didn't make it into C++
@alskidanАй бұрын
L-word 😅
@sunipmukherjee2130Ай бұрын
The amount of time we are spending basically turning C++ into Rust amazed me. The moment backwards compatibility is invoked, all of the safety guarantees of these advancements are thrown out. A sad fact this large community doesn’t seem to want to acknowledge.
@riley-arr-gАй бұрын
Cpp is a mess. Totally and utterly unsuitable for all but the most elite.
@mrtfttkhvАй бұрын
I really like the feature, but I really don't like how rust is not being mentioned, while it was surely a main example...
@testtest-qm7cjАй бұрын
Maybe because reflection was invented & popularized by other people many years prior to the birth of Rust programming lauguage?