In order to make Oils statically typed, we had to abandon Python reflection and use C++ source code generation instead. The lexer, flag definitions, and constants can be easily compiled to C++.
core/optview_gen.py 93 cpp/embedded_file_gen.py 66 doctools/help_gen.py 694 frontend/consts_gen.py 649 frontend/flag_gen.py 543 frontend/lexer_gen.py 468 frontend/option_gen.py 89 frontend/signal_gen.py 119 osh/arith_parse_gen.py 99 ysh/grammar_gen.py 245 3,065 lines in 11 files