- Mark all classes as extern(C++) to interface with C++. - Some nodes assert(false, "Not implemented") because their logic is handled in the parent nodes. Move this logic to the nodes themselves. - Implement multiplication and division. - Split tester.cpp into a header and implementation files. - The generate function in backend.d contains the whole compilation logic. It's not a backend task. - Output assembly.