I personally like headers very much and do not understand the hate: They are super simple and efficient.
They do not work well C++ though because it puts the implementation into the header for some reason.
They do not work well C++ though because it puts the implementation into the header for some reason.
ELF files based on the C type system can't provide such information on object files, and binary libraries.
In the modules world it can read it from the symbol table on the BMI, like in any other module based language.
It is simply a language design flaw of C++ that class implementation (not just templates) ended up in the headers.