This may never happen. However, I have in my mind the concept of a "generic" compiler. The lexer, parser, and code generation will be driven by special command data in the form of Mini Code. For each new language that one wants to parse and build a compiler for, all one needs to do is change the Mini Code that controls the lexer (scanner) and parser. The code generation will also be controlled by Mini Code. In other words, if one wants to generate code for a different processor machine, hopefully, all they will need to change is the Mini Code which controls code generation.