UCL for Code in Research cover art

UCL for Code in Research

UCL for Code in Research

By: Peter Schmidt
Listen for free

About this listen

The companion podcast for courses on programming from the Advanced Research Computing Centre of the University College of London, UK.

© 2026 UCL for Code in Research
Episodes
  • 4/10 On Polymorphism [2026]
    Feb 11 2026

    Inheritance, templates, function overloading - they all fall into the category of polymorphism in programming. My guest Klaus Iglberger and I discuss the different aspects of how this could be done with C++.

    Links

    • https://www.stroustrup.com/glossary.html#Gpolymorphism Glossary provided by Bjarne Stroustrup
    • https://cplusplus.com/doc/tutorial/polymorphism/
    • https://ics.uci.edu/~jajones/INF102-S18/readings/05_stratchey_1967.pdf Christian Strachey's article where he introduces polymorphism
    • https://dl.acm.org/doi/pdf/10.1145/6041.6042 Article by Cardelli and Wegner On Understanding Type, Data Abstraction and Polymorphism
    • https://en.wikipedia.org/wiki/Virtual_method_table virtual tables (vtables)
    • https://pabloariasal.github.io/2017/06/10/understanding-virtual-tables/
    • https://www.geeksforgeeks.org/vtable-and-vptr-in-cpp/
    • https://belaycpp.com/2021/10/01/history-of-c-templates-from-c-style-macros-to-concepts/ A history of templates
    • https://www.stroustrup.com/dne.html Bjarne Stroustrup: the Design and Evolution of C++

    Don't be shy - say Hi

    This podcast is brought to you by the Advanced Research Computing Centre of the University College London, UK.
    Producer and Host: Peter Schmidt

    Show More Show Less
    27 mins
  • 3/10 Throw, try, catch...test [2026]
    Feb 4 2026

    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 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


    Don't be shy - say Hi

    This podcast is brought to you by the Advanced Research Computing Centre of the University College London, UK.
    Producer and Host: Peter Schmidt

    Show More Show Less
    32 mins
  • 2/10 Data Types and the world of (smart) pointers [2026]
    Jan 28 2026

    In the beginnings were...data and data types. Which is where we begin our journey through C++. The language provides for a range of interesting, fundamental, complex and custom types - one of which is a set of pointer types.
    My guest in this episode is Marc Hartung from Dive in Berlin, Germany.

    Links:

    • https://en.wikipedia.org/wiki/Pointer_(computer_programming) summary of what pointers are
    • https://en.wikipedia.org/wiki/Address_(programming_language) one of the early uses of pointers in the APL language
    • https://en.wikipedia.org/wiki/Memory_management article on memory management
    • https://learn.microsoft.com/en-us/cpp/cpp/type-conversions-and-type-safety-modern-cpp an article on type conversion
    • https://gcc.gnu.org/onlinedocs/gcc/_005f_005fint128.html GCC compiler and support for 128bit integers
    • https://en.wikipedia.org/wiki/C%2B%2B_Standard_Library C++ Standard Library
    • https://dl.acm.org/doi/pdf/10.1145/242604.242613 Ań article on how the C++ Standard Library emerged
    • https://en.wikipedia.org/wiki/Standard_Template_Library the Standard Template Library (not to be confused with the C++ Standard Lib)

    Don't be shy - say Hi

    This podcast is brought to you by the Advanced Research Computing Centre of the University College London, UK.
    Producer and Host: Peter Schmidt

    Show More Show Less
    35 mins
No reviews yet
In the spirit of reconciliation, Audible acknowledges the Traditional Custodians of country throughout Australia and their connections to land, sea and community. We pay our respect to their elders past and present and extend that respect to all Aboriginal and Torres Strait Islander peoples today.