Reintroduction to Generic Programming for C++ Engineers - Nick DeMarco - C++Now 2024

แชร์
ฝัง
  • เผยแพร่เมื่อ 20 พ.ย. 2024

ความคิดเห็น • 16

  • @PaulTopping1
    @PaulTopping1 2 หลายเดือนก่อน +4

    I've only just started watching this but I already like the approach. Considering design choices from a sort of meta level is so important. So many C++ talks are centered on C++ features that it is easy to lose sight of one's programming goals. Obviously it is important to learn about the latest advances in the language but that's probably nowhere near as important as getting design right.

  • @user-hk3ej4hk7m
    @user-hk3ej4hk7m หลายเดือนก่อน

    Requiring concepts to be satisfied instead of a random bag of properties allow authors to not expose implementation details that could break code if changed. So while std::ranges::advance does not use the post increment in the current implementation, the authors are free to change that as long as they still adhere to the concept.

  • @dexterman6361
    @dexterman6361 2 หลายเดือนก่อน

    30:35 the gasp "what does copy mean" "* gasp*" from the audience caught me soo off guard and I lost it haha.
    Great video, thanks!

  • @RishabhRD
    @RishabhRD 2 หลายเดือนก่อน +3

    Excellent talk thanks

  • @8Trails50
    @8Trails50 หลายเดือนก่อน

    This talk is very good.

  • @bushidocodes
    @bushidocodes 2 หลายเดือนก่อน

    Great speaker! I like his energy.

  • @douggale5962
    @douggale5962 2 หลายเดือนก่อน

    12:17 Great example of why comments are bad. That doesn't "get" anything. It is an indexer, if you want terminology. It indexes into the object and gives a reference to an element which is an lvalue. It can be read or assigned/modified to read or update the array.

  • @CoryDambach
    @CoryDambach 2 หลายเดือนก่อน

    Excited for this one

  • @N....
    @N.... 2 หลายเดือนก่อน +1

    1:07:24 maybe a bad example since JPEG XL has been of recent interest as people are still trying to get Chromium to support it...

  • @toddfulton2280
    @toddfulton2280 2 หลายเดือนก่อน

    Instead of "checked generics", not sure what that means, I keep going back to Type Classes in my mind. Basically, type erased views or interfaces that only exist at compile time, ie at the language level. If the "view" doesn't support an operation used in an algorithm, it won't compile. For example, a Functor type class/view and fmap. The question then becomes a matter of compiling it down efficiently so that the "view" just forwards in the T when the algorithm is instantiated. Ie, it's transparent. I'm just spitballing, I hope that makes sense.
    Edit: Basically a language level construct Type Class that declares the required interface, that is used like a concept, except when writing a template the compiler can easily type check that no operations are used on the type not declared in the type class within the algorithm, no stealthy requirements. Then, when instantiating the template, a type T is checked that it supports the interface of the type class, similar to concept checking, and if passed, the template is instantiated. If not you get a compiler error similar to those with concepts. No typed erased view needs generated by compiler. A kind of combination of traditional templates with concepts, and abstract base classes just with no actual inheritance.

  • @Roibarkan
    @Roibarkan 5 หลายเดือนก่อน +1

    56:56 Alexander Stepanov’s talk: th-cam.com/video/YlVUzJwN_Xc/w-d-xo.html

  • @Gabriel38196
    @Gabriel38196 2 หลายเดือนก่อน

    does anyone know the talk referenced @ 27:41 ?

    • @AlfredoCorrea
      @AlfredoCorrea 2 หลายเดือนก่อน

      th-cam.com/video/sc1guyo5Rso/w-d-xo.htmlfeature=shared

    • @AlfredoCorrea
      @AlfredoCorrea 2 หลายเดือนก่อน

      look for Value Oriented Programming Part V - Return of the Values - Tony Van Eerd - C++Now 2024

  • @ignacionr
    @ignacionr 2 หลายเดือนก่อน +2

    The presenter so far (13 minutes in) is showing all his arguments supported by TypeScript. Hasn’t to my taste explained why not in C++, and I only have a hope that further down the video we will discuss C++. Oh it does switch to C++ and does become a lot more interesting. Still here 😊

  • @27182818284590452354
    @27182818284590452354 2 หลายเดือนก่อน +3

    Yet another language at a "CppCon". WT actual F? What happened to this community?