
UCL for Code in Research
The companion podcast for courses on programming from the Advanced Research Computing Centre of the University College of London, UK.
UCL for Code in Research
3/10 Throw, try, catch...test
•
Peter Schmidt
•
Season 1
•
Episode 3
Exceptions are essentials, as are error codes. Writes Bjarnes Stroustrup. And so on our 3rd stop through C++ I talk about what you could do when things go wrong. And what you can do to prevent errors - with testing. My guest is, again Klaus Iglberger.
The sounds you're hearing are from the excellent https://sound-effects.bbcrewind.co.uk BBC sound library - free of use for non-commercial purposes.
Links:
- https://en.wikipedia.org/wiki/Exception_handling_(programming)
- https://www.open-std.org/jtc1/sc22/wg21/docs/papers/2019/p1947r0.pdf B Stroustrup's article 'C++ exceptions and alternatives'
- https://gcc.gnu.org/onlinedocs/libstdc++/manual/using_exceptions.html GNU exception manual
- https://en.wikipedia.org/wiki/Errno.h the <errno> macro
- https://www.gnu.org/software/libc/manual/html_node/Error-Codes.html
- https://archive.org/details/working-effectively-with-legacy-code/ Michael Feathers "Working Effectively with Legacy Code"
- https://www.open-std.org/jtc1/sc22/wg21/docs/papers/2015/p0003r0.html#2.0 what went on with C++98 exceptions?
- https://devblogs.microsoft.com/oldnewthing/20180928-00/?p=99855 another discussion on the "old" exception handling in C++
Tools:
- https://undo.io/products/undo-c-plusplus/ Undo
- https://github.com/catchorg/Catch2 Catch2
- https://google.github.io/googletest/ Google tests
- https://github.com/emil-e/rapidcheck RapidCheck property based testing
This podcast is brought to you by the Advanced Research Computing Centre of the University College London, UK.
Producer and Host: Peter Schmidt