From b1fbdd8765a1a50b77ffab1f51e6b0c9c9435379 Mon Sep 17 00:00:00 2001 From: Justin Ethier Date: Tue, 4 Aug 2015 01:36:54 -0400 Subject: [PATCH] Sketch out an overview section --- docs/Writing-the-Cyclone-Scheme-Compiler.md | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/docs/Writing-the-Cyclone-Scheme-Compiler.md b/docs/Writing-the-Cyclone-Scheme-Compiler.md index 854c8877..fa4144bf 100644 --- a/docs/Writing-the-Cyclone-Scheme-Compiler.md +++ b/docs/Writing-the-Cyclone-Scheme-Compiler.md @@ -10,6 +10,7 @@ In addition, developing [Husk Scheme](http://justinethier.github.io/husk-scheme) ## Table of Contents +- [Overview](#overview) - [Source-to-Source Transformations](#source-to-source-transformations) - [C Code Generation](#c-code-generation) - [C Runtime](#c-runtime) @@ -21,6 +22,12 @@ In addition, developing [Husk Scheme](http://justinethier.github.io/husk-scheme) - [Conclusion](#conclusion) - [References](#references) +## Overview + +TODO: overview of the compilation process + +input file => scheme AST => IR's => C-gen => C compiler => exe or obj + ## Source-to-Source Transformations My primary inspiration for Cyclone was Marc Feeley's [The 90 minute Scheme to C compiler](http://churchturing.org/y/90-min-scc.pdf) (also [video](https://www.youtube.com/watch?v=TxOM9Y5YrCs) and [code](https://github.com/justinethier/nugget/tree/master/90-min-scc)). Over the course of 90 minutes, Feeley demonstrates how to compile Scheme to C code using source-to-source transformations, including closure and continuation-passing-style (CPS) conversions.