summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--chickadee/graphics/seagull.scm9
1 files changed, 9 insertions, 0 deletions
diff --git a/chickadee/graphics/seagull.scm b/chickadee/graphics/seagull.scm
index 8a61367..4f88973 100644
--- a/chickadee/graphics/seagull.scm
+++ b/chickadee/graphics/seagull.scm
@@ -87,6 +87,15 @@
;; by Abdulaziz Ghuloum that showed me that even a mere mortal could
;; write a useful compiler. Thanks to Christine Lemmer Webber for
;; pointing me to that paper.
+;;
+;; The first pass of the compiler, the expander, converts Seagull code
+;; into an intermediate form that uses fewer syntactic forms and
+;; renames all variables to be program-unique. A simplifier pass then
+;; propagates constants and evaluates expressions that can be computed
+;; at compile-time such as (+ 1 2). Each expression is then
+;; associated with a type via a type inference pass. The fully typed
+;; program can then be emitted directly to GLSL code. There are other
+;; passes, but these are the most important.
;;;