Next Generation Compiler Collection Data types: • Source File • AST (Abstract Syntax Tree) • Intermediary (See: NgccIntermediary) • Machine code • Object File C Flow: • C Source • AST • Intermediary • Assembler Source • Machine Code • Object File Python Flow: • Python Source • AST • Intermediary • C Source C Decompilation Flow: • Object File • Machine Code • Intermediary • C Source Goals: • Become a viable replacement for the existing GCC (Gnu Compiler Collection) • Allow quick turnaround on new optimizations, even project-specific • Promote experimentation with new compilation and decompilation methods • Emphasize better output and ignore speed of compilation • Become faster both in compile-time and run-time than competing compilers through self-hosting and optimizing