Added TODO

This commit is contained in:
Justin Ethier 2017-01-06 03:54:32 -05:00
parent e69df87225
commit ed5f772fe8

View file

@ -48,6 +48,8 @@ free variables - variables that are referenced within the body of a function but
Cyclone has a similar architecture to other modern compilers: Cyclone has a similar architecture to other modern compilers:
TODO: this is hard to read. let's revisit original diagram and make that less wide so the exported PNG is not as wide either
<img src="images/compiler.png" alt="flowchart of cyclone compiler"> <img src="images/compiler.png" alt="flowchart of cyclone compiler">
First, an input file containing Scheme code is received on the command line and loaded into an abstract syntax tree (AST) by Cyclone's parser. From there a series of source-to-source transformations are performed on the AST to expand macros, perform optimizations, and make the code easier to compile to C. These intermediate representations (IR) can be printed out in a readable format to aid debugging. The final AST is then output as a `.c` file and the C compiler is invoked to create the final executable or object file. First, an input file containing Scheme code is received on the command line and loaded into an abstract syntax tree (AST) by Cyclone's parser. From there a series of source-to-source transformations are performed on the AST to expand macros, perform optimizations, and make the code easier to compile to C. These intermediate representations (IR) can be printed out in a readable format to aid debugging. The final AST is then output as a `.c` file and the C compiler is invoked to create the final executable or object file.