C++ provides great support for types. They help us structure our data, communicate our intentions and avoid run-time errors. But, all too often, our APIs use built-in types such as int or float, instead of something more meaningful, like 'kilometres' or 'weight'. This means that we throw away all that support from the type system, and end up failing at run-time (if we are lucky).
Why do we give up on stronger types, and what can we do about it? This talk will address these questions and present solutions that will make your code safer - and more readable in the process.