~/talk

Functional Error and Optional-value Handling with STX

Talkat CppCon 2020 · 2020-09-14..09-18· [software-architecture]
links:none on file
slides:none on file

STX is a header-only C++ library (no-std, no-RTTI, no-exceptions) providing a configurable panic handler with runtime hooks and compile-time defaults, plus option and result monads that supply map/match/or and expect methods and customizable error reporting. A try-style macro auto-propagates errors without exceptions. Results omit copies for fast return-by-value. Benchmarks show exception-based error paths incur huge slowdowns (example: ~554% latency increase on failure), while STX results run as fast as traditional error-code approaches.

AI-written summary · about

  1. 0:00Intro
  2. 1:59Embedded Systems Design Space
  3. 4:25Introduction to STX
  4. 5:06STX Libraries
  5. 5:47Motivation #1
  6. 8:09Fatal Failures
  7. 8:57Fail-fast Abandonment Today
  8. 12:50Abandonment Expectations in the Wild
  9. 13:47Managing Abandonment Expectations
  10. 15:50Panic Function
  11. 17:03Panic example (backtrace enabled)
  12. 17:42Panic Handler
  13. 19:17Panic Behaviors
  14. 20:58Panic Hooks Example
  15. 23:55Optional-value Handling in C++ Today
  16. 24:29std::optional issues
  17. 27:35Option Constructors
  18. 27:56Option Example
  19. 29:49Option as a Type Monad
  20. 31:36Error Handling in C++ Today
  21. 32:18Exceptions Considered Harmful?
  22. 35:32What Problems Did Exceptions Solve?
  23. 38:17Result Constructors
  24. 39:24Result Example
  25. 41:12Error-propagation with TRY_OK
  26. 43:35Error-reporting with Custom Types
  27. 45:44Variant Benchmark Code
  28. 46:05Exceptions Benchmark Code
  29. 46:17C-Style Benchmark Code
~/search
type to search 6,249 conferences, 138,987 speakers and 185,172 talks
~/help
cmdctrl k
search every conference, speaker and series
/
focus the filter search
h
home
c
conferences
s
speakers
e
series
t
light / dark — the status bar button does the same
?
this help
esc
close this, then clear every filter — or just the search, while you are typing in it

Ignored while you are typing. Pages without a filter rail have no search to focus.