~/talk

Composable C++: Principles and Patterns

Talkat CppCon 2021 · on Tuesday, 2021-10-26· at 15:15· online· [frontend-architecture]
slides:none on file

Claims that matter: returning bool or int unlocks composition, and choosing return types (optional, collections) prevents awkward special cases. Examples show real success: a logger returning bool composes filters, fans and no-op sinks; a fallback allocator pattern composes allocators; Craig Reynolds’ steering behaviors sum force vectors for emergent flocking. At compile time concepts and type-lists enforce interfaces; separating traversal from computation with a transform-reduce over rose tree yields reusable hierarchical algorithms. These patterns are implemented and effective.

AI-written summary · about

  1. 0:00Start
  2. 1:42What Do We Mean by Composable
  3. 3:05The Answer to What Is Composability
  4. 3:21Thesis
  5. 5:36Fundamentals
  6. 8:43Chain of Responsibility Pattern
  7. 14:46Steering Behaviors
  8. 15:54Separation Alignment and Cohesion
  9. 22:48Composable Functions
  10. 23:44Object Level Composability
  11. 26:07The Passthrough
  12. 27:01An Allocator Interface
  13. 33:00Poster Child for Composable Patterns
  14. 34:56Raw Conditions
  15. 37:02Are Concepts a Way To Achieve Type Safe Composability or Are They Orthogonal Concepts
  16. 38:16Object Orientation
  17. 38:28Well-Behaved Functions
  18. 39:27Compile Time Interlude
  19. 39:43Type List Manipulation
  20. 43:43Composite Pattern
  21. 44:07Object-Oriented Pattern
  22. 45:55Visitor Pattern
  23. 48:23Rose Tree
  24. 51:43Iterators
  25. 56:25Separating the When from the What and the Where
  26. 57:23Principled Approach to Composability
~/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.