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 94 cpp/embedded_file_gen.py 66 doctools/help_gen.py 658 frontend/consts_gen.py 650 frontend/flag_gen.py 540 frontend/lexer_gen.py 500 frontend/option_gen.py 94 frontend/signal_gen.py 105 osh/arith_parse_gen.py 99 ysh/grammar_gen.py 245 3,051 lines in 11 files