Skip to content
0:00 / 0:00

#c++#typesafety#memorysafety

Delivering Safe C++ - Bjarne Stroustrup - CppCon 2023

CppCon

189K subscribers • 101 videos on Hallway • Conference channel

YouTube
  • One of the most-watched uploads on CppCon, a conference or university channel Hallway lists. Nobody has recommended it in the communities yet, so it ranks below community picks.
  • Presented by Bjarne Stroustrup, creator of C++
  • Linked in the descriptionCppCon/CppCon2023

Intermediate. Assumes working knowledge.

192K views2 years ago

Programming languagesSystems programmingC++Language design and type systemsMemory management

Bjarne Stroustrup discusses how to achieve type and memory safety in modern C++ without sacrificing performance.

cppcon.org/ CppCon 2023 Early Access: cppcon.org/early-access Access All 2023 Session Videos Ahead of Their Official Release To YouTube. At least 30 days exclusive access through the Early Access system. Videos will be released to the CppCon channel on a schedule of one video per business day, with initial releases starting in November. --- Delivering Safe C++ - Bjarne Stroustrup - CppCon 2023 github.com/CppCon/CppCon2023 Type safety was one of the key initial C++ design ideals. We have evolved C++ to the point where we can write C++ with no violations of the type system, no resource leaks, no memory corruption, no garbage collector, no limitation of expressiveness or performance degradation compared to well-written modern C++. We face three major challenges: To define what “safe” means in the context of various C++ uses, to guarantee such safety where guarantees are needed, and to get developers to write such verified safe code. I outline an approach based on safety profiles to address these challenges, describe an approach to eliminate dangling pointers, and suggest how to eliminate all dangling pointers and all range errors. My aim for key applications is verified type-and-resource-safe C++. An emphasis is on minimizing costly run-time checks through the use of abstractions. I see the current emphasis on safety as an opportunity to complete one aspect of C++’s fundamental aims in real-world code. --- Bjarne Stroustrup Bjarne Stroustrup is the designer and original implementer of C++ as well as the author of The C++ Programming Language (4th Edition) and A Tour of C++ (3rd edition), Programming: Principles and Practice using C++ (2nd Edition), and many popular and academic publications. He is a professor of Computer Science in Columbia University in New York City. Dr. Stroustrup is a member of the US National Academy of Engineering, and an IEEE, ACM, and CHM fellow. He received the 2018 Charles Stark Draper Prize, the IEEE Computer Society's 2018 Computer Pioneer Award, and the 2017 IET Faraday Medal. He did much of his most important work in Bell Labs. His research interests include distributed systems, design, programming techniques, software development tools, and programming languages. To make C++ a stable and up-to-date base for real-world software development, he has been a leading figure with the ISO C++ standards effort for more than 30 years. He holds a master’s in Mathematics from Aarhus University, where he is an honorary professor in the Computer Science Department, and a PhD in Computer Science from Cambridge University, where he is an honorary fellow of Churchill College. www.stroustrup.com __ Work at Hudson River Trading (HRT): tinyurl.com/safxfctf --- Videos Filmed & Edited by Bash Films: BashFilms.com YouTube Channel Managed by Digital Medium Ltd events.digital-medium.co.uk --- Registration for CppCon: cppcon.org/registration/ #cppcon #cppprogramming #cpp

Why it's here

A top upload from a listed channel

CppCon is on Hallway's list of conference and university channels, and this upload is one of its most-watched talks or lectures. Nobody has recommended it in the communities yet, so it ranks below community picks.

u/axyz0390in r/C_Programming • Mentions

On “Can you guys stop bashing K&R2? There is literally nothing wrong with it (of importance).”

As per C convention, for function with too many arguments, programmers use \`struct\`. That is how things are represented at assembly level as well (large structs are placed on stack, and the caller provides this information to the callee so that it may access the arguments - It's just a matter of caller setting frame pointers and stack appropriately) I think it's important to understand where C started. Initially Ritchie and Thompson were writing Unix in Assembly (which is quite hard). To them, C provided a better abstraction (looking at the C-code, they could reason about the assembly code that will be produced) Of-course C could have evolved to make developer's life more easy. But,…

u/lezvabanin r/C_Programming • Mentions

On “I'm a C++ dev who tried C and I didn't like it at all. Change my mind?”

I believe this to be a matter of personal preference. Tangentially related, please watch Bjarne’s keynote from cppcon. link to this video