Loading…
CppCon 2020 has ended
Monday, September 14 • 10:30 - 11:30
Back to Basics: The Abstract Machine

Log in to save this to your schedule, view media, leave feedback and see who's attending!

Feedback form is now closed.
The compilation of every C++ program is controlled by an obscure device that remains mysterious, or even unknown, to many programmers: the C++ abstract machine. When a program is compiled, the abstract machine constructs and expresses the compiler's "mental model" of that program. It is responsible for enforcing all of the rules governing C++ programs, and ensuring that programs execute properly when those rules are observed. What's more, the abstract machine is often quite different from the physical machine, and the difference between the two can be confusing at first.

The goal of this talk is to provide an introduction to the C++ abstract machine and describe its relationship to the C++ language, how it influences the way we think about coding in C++, and its relationship to the underlying hardware upon which C++ programs execute. If you were previously unaware of the abstract machine, or have only a vague notion of what it is, then this talk is for you. Attendees will leave this session with a basic understanding of what the abstract machine is, its conception of memory, its relationship to hardware, undefined/unspecified/implementation-defined/observable behavior, and the "as-if" rule.

Speakers
avatar for Bob Steagall

Bob Steagall

Chief Cook and Bottle Washer, KEWB Computing


Monday September 14, 2020 10:30 - 11:30 MDT
Back to Basics
  Back to Basics