Embedded and Real-Time Programming Languages
Our courses cover C for microcontrollers, classic and modern C++ up to C++20, OpenCL for parallel computing, Python, and Java for industrial and Android development. Each one is built around the constraints of embedded targets: limited memory, no dynamic allocation, and code that has to be reviewable.
The details are what the courses spend time on: undefined behavior and what the optimizer is allowed to do with it, alignment and aliasing rules, move semantics and RAII without dynamic allocation, template cost at compile time versus run time, and the MISRA rules that exist because these traps are real.