~/talk

C++: No more nulls! (Fixing the billion dollar mistake)

Talkat NDC TechTown 2018 · 2018-09-27..09-30· [software-architecture]
slides:none on file

Argues C++ eliminates most nulls by using references and value types for definite data, std::optional for maybe values, and gsl::not_null for remaining pointers; shows concrete examples (make_flyer returning a flyer by value, artist/album members as references, optional song returns, atom/nucleus two‑stage init) and points out return‑value optimization and optional locality benefits. Claims compile‑time errors replace many runtime null dereferences and that not_null deletes nullptr construction.

AI-written summary · about

  1. 0:00Intro
  2. 1:28Outline
  3. 4:44Optional parameter
  4. 5:12Late initialisation of member
  5. 6:54Dereferencing is undefined behaviour
  6. 8:39Unclear APIs
  7. 13:22Why is static typing good?
  8. 14:28What does null do to static typing?
  9. 15:45Conflating notions
  10. 16:20Values which can be missing
  11. 16:46Techniques which allow for missing values
  12. 17:46References over pointers
  13. 21:22Values over pointers
  14. 21:54Return values
  15. 24:39Use the standard library
  16. 25:32Maybe techniques are for maybe values
  17. 27:11std::optional
  18. 33:36Bug classification Where
  19. 35:14Remaining pointers
  20. 35:52Tackle maybe pointers
  21. 36:39Tackle definite pointers
  22. 40:24A bright future
~/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.