Ranges v3 and microcontrollers, a revolution

Although I doubt that Eric Niebler spends a lot of his time programming micro controllers the concepts of his ranges v3 will revolutionize this domain. Using traditional ranges an output range cannot fail and zero cost abstractions of anything that is not actually two pointers is seldom possible. Ranges v3 drop these prohibiting requirements which allows us to abstract almost every peripheral as a range at zero cost, often just adding meta information to already existing hardware registers and thus using no RAM at all. In other cases a range can be implemented in a lazy manor eliminating the need for a temporary which is especially important in this domain where RAM is usually the most expensive and scarcest resource. This gives us hope to bring this quirky domain back into the fold of mainstream C++ and out of the hands of barbaric languages like C.

Speaker: Odin Holmes


Go back