Regular Types: From Stepanov to C++ Concepts - Victor Ciura - ACCU 2024
ACCU Conference ACCU Conference
16.3K subscribers
484 views
17

 Published On Premiered Oct 9, 2024

ACCU Membership: https://tinyurl.com/ydnfkcyn
---

Regular Types: From Stepanov to C++ Concepts - Victor Ciura - ACCU 2024
---

“Regular” is not exactly a new C++ concept. If we reflect back on STL and its design principles, as best described by Alexander Stepanov in his “Fundamentals of Generic Programming” paper, we see that regular types naturally appear as necessary foundational concepts in programming. Why do we need to bother with such taxonomies? Because STL assumes such properties about the types it deals with and imposes such conceptual requirements for its data structures and algorithms to work properly.

STL vocabulary types such as string_view, span, optional, expected etc., raise new questions regarding values types, whole-part semantics, copies, composite objects, ordering and equality.

Designing and implementing regular types is crucial in everyday programming, not just library design. Properly constraining types and function prototypes will result in intuitive usage; conversely, breaking subtle contracts for functions and algorithms will result in unexpected behavior for the caller.

This talk will explore the relation between Regular types (plus other concepts) and STL constructs, with examples, common pitfalls and guidance.

Slides: https://accu.org/conf-previous/accu2024/
Sponsored By think-cell
---

Victor Ciura

Victor Ciura is a Principal Engineer on the Visual C++ team, helping to improve the tools he’s been using for years. Leading engineering efforts across multiple teams working on making Visual Studio the best IDE for C++ Game developers.

Before joining Microsoft, he programmed C++ professionally for 20 years, designing and implementing several core components and libraries of Advanced Installer, improving the virtualization and repackaging technologies for MSI/MSIX.

One of his hobbies is tidying-up and modernizing aging codebases and has been known to build open-source tools that help this process: Clang Power Tools.

He’s a regular guest at Computer Science Department of his Alma Mater, University of Craiova, where he gives student lectures and workshops on using modern C++, STL, algorithms and optimization techniques.

More details: @ciura_victor and https://ciura.ro and linkedin.com/in/victor-ciura
---

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: https://tinyurl.com/ydnfkcyn
2024 Program: https://accu.org/conf-previous/accu2024/
https://accu.org
https://www.accuconference.org/
https://mastodon.social/@ACCUConf
  / accu-conference  
https://bsky.app/profile/accuconf.bsk...
  / accuorg  
  / accuconf  
---

YouTube Videos Filmed, Edited & Optimised by Digital Medium: https://events.digital-medium.co.uk


#accuconf #cppprogramming #cplusplus #cplusplusprogramming #cpp

show more

Share/Embed