# Exceptions and RAII Demonstrations: 1. ‹exceptions› – throwing and catching exceptions 2. ‹stdexcept› – the standard exception hierarchy 3. ‹semaphore› – automatic management of finite resources 4. ‹swarm› – keeping the swarm under control Elementary exercises: 1. ‹default› – read a number or return a default value 2. ‹counter› – count the number of instances of a class 3. ‹coffee› – a simple model of a coffee machine Preparatory exercises: 1. ‹fd› – POSIX file descriptors 2. ‹loan› – database-style transactions with resources 3. ‹library› – borrowing books 4. ‹parse› – a simple parser which throws exceptions 5. ‹invest› – we further stretch the banking story 6. ‹linear› – linear equations, with some exceptions Regular exercises: 1. ‹printing› – printing with a monthly budget 2. ‹bsearch› – a key-value vector which throws on failure 3. ‹enzyme› – cellular chemistry with RAII 4. ‹tinyvec› † – a vector in a fixed memory buffer 5. ‹lock› – a movable mutual exclusion token 6. ‹bounded› – a bounded queue that throws when full