YoVDO

From Iterators to Ranges - The Upcoming Evolution of the Standard Library

Offered By: ACCU Conference via YouTube

Tags

ACCU Conference Courses C++ Courses Code Readability Courses Coroutines Courses

Course Description

Overview

Save Big on Coursera Plus. 7,000+ courses at $160 off. Limited Time Only!
Explore the evolution of C++ Standard Library from iterators to ranges in this ACCU Conference talk. Dive into the complexities of defining the Range concept, balancing theoretical considerations with practical applications. Learn about the challenges in designing range semantics and their impact on code readability and conciseness. Discover implementations of range adaptors, including transform and filter, and understand how to create more efficient versions using iterator safety and indices. Examine flexible algorithm returns, external and internal iteration techniques, and the use of coroutines in range-based programming. Investigate interruptable generator ranges, concatenation implementations, and advanced formatting techniques for containers. Gain insights from Arno Schoedl, an experienced software architect and CTO, on the future direction of C++ library design and its implications for developers.

Syllabus

Intro
Ranges in C++20
Why do I think I know something about ranges? think-cell
What are Ranges?
Transform Adaptor (2)
Transform Adaptor Implementation
Filter Adaptor Implementation
More Efficient Range Adaptors: Iterator Safety think-cell
Again: How does iterator look like of
Index-Iterator Compatibility
Super-Efficient Range Adaptors With Indices
More Flexible Algorithm Returns (3)
External iteration (2)
Coroutines (2)
Internal Iteration often good enough
Interruptable Generator Ranges (2)
concat implementation with indices (2)
concat implementation as generator range
Format Strings
Formatting Into Containers (1)
Fast Formatting Into Containers
Better reserve


Taught by

ACCU Conference

Related Courses

Computer Graphics
University of California, San Diego via edX
Intro to Parallel Programming
Nvidia via Udacity
Initiation à la programmation (en C++)
École Polytechnique Fédérale de Lausanne via Coursera
C++ For C Programmers, Part A
University of California, Santa Cruz via Coursera
Introduction à la programmation orientée objet (en C++)
École Polytechnique Fédérale de Lausanne via Coursera