A Safer Iteration Model for C++ - Tristan Brindle - C++ on Sea 2023
---
A Safer Iteration Model for C - Tristan Brindle - C on Sea 2023
“Safety” is the word on everyone’s lips at the moment. Unfortunately for C programmers, one of our most fundamental abstractions — iterators — are fraught with danger . Prone to out-of-bounds memory accesses, unexpected invalidation and dangling, iterators are a UB minefield in which even experts can find themselves in trouble.
Fortunately there is something we can do about it.
In this talk we’ll look at an alternative, safer abstraction for iterating over sequences and introduce Flux, a new C 20 library implementing these ideas. We’ll see how Flux retains all of the power and flexibility of the existing STL, but greatly reduces the potential for UB through careful design and implementation choices — all while offering compatibility with existing code.
We’ll also take a look at performance and examine the cost of universal bounds checking. Spoiler: it’s probably a lot less than you’d think. In fact, we’ll see how Flux code can actually outperform equivalent C 20 Ranges code in some common situations.
Finally, we’ll take a quick look at some other quality-of-life improvements that Flux brings.
If you’re interested in the STL and the ranges and algorithms in C 20 and are looking for an easy-to-use way of making your codebase more resilient, then this is the talk for you.
---
Slides:
Sponsored by think-cell:
---
Tristan Brindle
Tristan Brindle is a C consultant and trainer based in London. With over 15 years C experience, he started his career working in high-performance computing in the oil industry in Australia before returning home to his native UK in 2018. He is an active member of the ISO C Standards Committee (WG21) and the BSI C Panel. He is a regular speaker at C conferences around the world, and is a director of C London Uni, a non-profit organisation offering free introductory programming classes in London and online.
---
C on Sea is an annual C and coding conference, in Folkestone, in the UK.
- Annual C on Sea, C conference:
- 2023 Program:
- Twitter:
---
YouTube Videos Filmed, Edited & Optimised by Digital Medium:
#cpp #cpponsea #programming
2 views
220
52
2 months ago 00:01:19 1
Hello! | Kids Greeting Song and Feelings Song | Super Simple Songs
2 months ago 00:02:00 1
Red Yellow Green Blue | featuring The Bumble Nums | Super Simple Songs
2 months ago 00:02:05 1
The Alphabet Is So Much Fun | Kids Songs | Super Simple Songs
2 months ago 00:03:03 1
I See Something Blue | Colors Song for Children | Super Simple Songs
2 months ago 00:31:40 1
Israel’s pager attack in Lebanon will blow back: Western tech can’t be trusted anymore
2 months ago 00:02:16 1
Hello My Friends | Halloween Song For Kids | Finny The Shark
2 months ago 00:04:19 1
The Crabs Go Crawling | Count To Ten | Finny The Shark
2 months ago 00:00:35 1
Automatic solar panel cleaning robot PhotovoltaicCleaner solar panel cleaning machine#solarcleaning
2 months ago 00:11:56 1
2024 Renault Kangoo - interior and Exterior Features
2 months ago 00:01:43 1
How’s The Weather? | ft. the Super Simple Puppets | Super Simple Songs
2 months ago 00:01:02 1
The A Song (Uppercase) | Super Simple ABCs
2 months ago 00:00:45 1
The C Song (Uppercase) | Super Simple ABCs
2 months ago 00:01:23 1
1 bitcoin will be worth 52 million US dollars
2 months ago 00:01:00 1
70mai Dash Cam A510 | Revitalized 1944P Visuals
2 months ago 00:02:00 1
If You’re Happy | Noodle & Pals | Songs For Children
2 months ago 00:03:11 1
Last castrato Alessandro Moreschi sings in a quartet. La cruda mia nemica (Palestrina) - 1904