First part of the presentation introduces about what you can do using the UNIX C API.
Features:
- Dynamic libraries:
- compile-time linking
- runtime overloading (LD_PRELOAD)
- runtime loading
- Sockets
- Pipes
Second part explains approximately how runtime abstraction is implemented (virtual) in C++ using C code, and also shows the power of compile-time abstraction in C++ by showing examples of traits.
Features:
- Implementation of a vtable in C
- Template specialization
- Traits pattern
Examples available in this repo
This presentation was made for the CS Games 2017 ULaval delegation.