Introducing a Memory-Safe Successor Language in Large C++ Code Bases
Offered By: CppNow via YouTube
Course Description
Overview
Explore the challenges and solutions of introducing a memory-safe successor language in large C++ code bases in this conference talk from CppNow 2023. Delve into the limitations of incrementally improving C++ and the advantages of adopting a new language like Swift. Learn about Swift's design aspects that make it suitable for integration into existing code bases, its C++ interoperability features, and the lessons learned from rolling out a memory-safe language in a large software ecosystem. Gain insights into key concepts such as uninitialized memory, integer overflow, pointer safety, and Swift's approach to local variables, types, undefined behavior, generic functions, exceptions, and concurrency. Discover strategies for incremental adoption, refactoring, and managing team psychology when transitioning to a memory-safe language.
Syllabus
Introduction
Apples predecessor languages
Problems with C
Mitigation
The biggest problem
Uninitialized memory
Initialize local variables
The real problem
Integer overflow
Bounce checks
pointers and local reasoning
pointers follow stricter rules
Can we fix these problems without a new language
Our successful language is Swift
Swift is a successful language
Local variables
Types
Undefined Behavior
Generic Functions
Swift
Swift Exceptions
Concurrency
Data Isolation
Moving This Way
Three Key Ideas
Be Incremental
The Second System Effect
You Never Succeed
Refactor
Moving Forward
Team Psychology
Taught by
CppNow
Related Courses
Your Favorite Undefined Behavior in C++CppNow via YouTube Under the Hood - Assembly, System Calls, and Hardware in C++
CppNow via YouTube Carbon Language Successor Strategy - From C++ Interop to Memory Safety
CppNow via YouTube Value Oriented Programming Part 1 - You Say You Want to Write a Function
CppNow via YouTube Integer Type Selection in C++ - Safe, Secure and Correct Code
CppNow via YouTube