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 653 frontend/flag_gen.py 546 frontend/lexer_gen.py 503 frontend/option_gen.py 94 frontend/signal_gen.py 119 osh/arith_parse_gen.py 99 ysh/grammar_gen.py 245 3,112 lines in 11 files