aboutsummaryrefslogtreecommitdiffstats
path: root/README.md
diff options
context:
space:
mode:
authorRose Hogenson <rhogenson@posteo.net>2022-04-22 21:43:28 -0700
committerRose Hogenson <rhogenson@posteo.net>2022-04-22 21:43:28 -0700
commit7d042947d013948f5ebdca2e0b493097e3f73d59 (patch)
tree53be9c636fab76f8a3c5d0f8de1e09d0d50ec0da /README.md
parentd94a8ae49cc08fda264ce3ab1cbea846158aff92 (diff)
downloadchromatopelma-7d042947d013948f5ebdca2e0b493097e3f73d59.tar.zst
Add a diagram of the compiler phases.
Diffstat (limited to 'README.md')
-rw-r--r--README.md6
1 files changed, 5 insertions, 1 deletions
diff --git a/README.md b/README.md
index f10efc5..653c43b 100644
--- a/README.md
+++ b/README.md
@@ -25,7 +25,11 @@ The cute scheme compiler (like most compilers) consists of a number of
phases that gradually transform a program from scheme code through
numerous intermediate representations. The csc compiler has 3 such
intermediate representations, not counting bytecode itself. These two
-languages are creatively called IR1, IR2, and IR3.
+languages are creatively called IR1, IR2, and IR3. Fig. 1 shows the
+phases of code generation.
+
+![Code generation goes through several intermediate phases, named IR1,
+IR2, and IR3.](design.svg)
### IR1