YoVDO

De-fragmenting C++ - Making Exceptions More Affordable and Usable

Offered By: ACCU Conference via YouTube

Tags

ACCU Conference Courses Programming Languages Courses Software Development Courses

Course Description

Overview

Save Big on Coursera Plus. 7,000+ courses at $160 off. Limited Time Only!
Explore the challenges and potential solutions for exception handling in C++ in this keynote address from ACCU 2019. Delve into the root causes of fragmentation within the C++ community regarding error handling and examine proposed solutions aimed at unifying exception usage. Learn about the distinctions between program-recoverable errors, program bugs, and resource limit exceedances, and understand why they should be reported differently. Discover ongoing efforts in C++ standardization to evolve the standard library, including groundwork laid in C++20 for future changes. Gain insights from Herb Sutter, a prominent figure in C++ development, as he discusses zero-overhead exception handling, throw values versus types, and proposed extensions like try expressions. Understand the benefits of these potential changes, including improved convenience, automatic exception propagation, and enhanced code visibility.

Syllabus

Intro
Code review...
Pathology 101
Roadmap
A funny thing happened on the way to breakfast...
Root cause: Today's EH not zero-overhead
Taxonomy
Core issues: Zero-overhead + determinism
Throw values, not types
Core proposal summary
Bugs contracts
Spot the oddities
Key Q: Can I continue running normal code?
Language-independent fact
Proposed extension: try expressions
Simplifications ► What are the benefits? Convenience as todayl: Automatic exception propagation ► Correctness (newl Visible still convenient) propagation


Taught by

ACCU Conference

Related Courses

Software as a Service
University of California, Berkeley via Coursera
Software Testing
University of Utah via Udacity
The Hardware/Software Interface
University of Washington via Coursera
Software Debugging
Saarland University via Udacity
Introduction to Systematic Program Design - Part 1
The University of British Columbia via Coursera