Enhancing Safety in C++ Code With Modern C++ Quantities and Units Library - Mateusz Pusz - ACCU 2024

Поделиться
HTML-код
  • Опубликовано: 12 сен 2024
  • ACCU Membership: tinyurl.com/yd...
    ---
    Enhancing Safety in C++ Code With Modern C++ Quantities and Units Library - Mateusz Pusz - ACCU 2024
    ---
    Safety has been a huge buzzword in the C++ Community in recent years. There are many concerns about the safety of our C++ language, and projects developed using it. Many improvements are being discussed, starting from handling of the low-level fundamental types, through updating the language rules (e.g., initialization), up to providing safer high-level abstractions in the library.
    This lecture presents how the usage of a Modern C++ quantities and units library can improve the safety of the code we write every day. During the talk, Mateusz will describe all issues and possible solutions discussed in [P2981: Improving our safety with a physical quantities and units library](wg21.link/p2981). Based on the examples developed with the mp-units project, the attendees will not only learn the obvious benefits of using such a library, but also some less known safety features will be presented.
    During the talk, we will see typical issues of code bases that do not use a proper library. We will also learn about various mishaps in engineering that happened through the ages and were caused by human errors in handling quantities and their units. We will also see how they can be easily and safely addressed using the mp-units library.
    In the end, Mateusz will describe which issues can't be solved by the quantities and units library itself for now. He will review a list of potential extensions to the C++ language and its library that would allow even more safety in our projects.
    Slides: accu.org/conf-...
    Sponsored By think-cell
    ---
    Mateusz Pusz
    A software architect, principal engineer, and security champion with over 20 years of experience designing, writing, and maintaining C++ code for fun and living. A trainer with over 10 years of C++ teaching experience, consultant, conference speaker, and evangelist. His main areas of interest and expertise are Modern C++, code performance, low latency, safety, and maintainability.
    Mateusz worked at Intel for 13 years, and now he is a Principal Software Engineer and the head of the C++ Competency Center at EPAM Systems. He is also a founder of Train IT, which provides dedicated C++ trainings and consulting services to corporations worldwide.
    Mateusz is a contributor and an active voting member of the ISO C++ Committee (WG21), where, together with the best C++ experts in the world, he shapes the future of the C++ language.
    ---
    The ACCU Conference is the annual conference of the ACCU membership, but is open to any and all who wish to attend. The tagline for the ACCU is 'Professionalism in Programming', which captures the whole spectrum of programming languages, tools, techniques and processes involved in advancing our craft. While there remains a core of C and C++ - with many members participating in respective ISO standards bodies - the conference, like the organisation, embraces other language ecosystems and you should expect to see sessions on C#, D, F#, Go, Javascript, Haskell, Java, Kotlin, Lisp, Python, Ruby, Rust, Swift and more.The ACCU Conference is a conference by programmers for programmers about programming.
    Discounted rates for members.
    ACCU Membership: tinyurl.com/yd...
    2024 Program: accu.org/conf-...
    accu.org
    www.accuconfer...
    mastodon.socia...
    / accu-conference
    bsky.app/profi...
    / accuorg
    / accuconf
    ---
    RUclips Videos Filmed, Edited & Optimised by Digital Medium: events.digital...
    #accuconf #programming #cplusplus #cppprogramming #cpp

Комментарии • 8

  • @epiphaeny
    @epiphaeny 21 день назад +1

    I love the U++ icon :D
    I would prefer a prefix for public data members like "__private_" or "__internal_" . The postfix seems strange to me... but yeah not that important.

    • @MateuszPusz
      @MateuszPusz 16 дней назад

      I am happy that you like the icon. It took us a lot of time and iterations to come up with it 🙂

    • @MateuszPusz
      @MateuszPusz 16 дней назад

      Regarding the prefix for public data members, it is just an implementation detail that I may change before every library release. 😈
      Two underscores are reserved in the language, and its usage outside the `std` namespace is an undefined behavior, so I would not like to use it in mp-units.

  • @j.a.kierstead2100
    @j.a.kierstead2100 11 дней назад

    force_in() should be forced_into()

  • @Roibarkan
    @Roibarkan 13 дней назад +1

    4:13 Roth Michael’s talk from cppcon about strong types for audio: ruclips.net/video/oxnCdIfC4Z4/видео.html

    • @MateuszPusz
      @MateuszPusz 8 дней назад +1

      Roth's talk is really nice indeed. I helped him design those types for his use case, and we were very happy with the final result.

  • @KhalilEstell
    @KhalilEstell 21 день назад +1

    So excited for C++ standard units 🤩

    • @MateuszPusz
      @MateuszPusz 16 дней назад

      It is great to hear that! Thanks!