aboutsummaryrefslogtreecommitdiffstats
path: root/csc/macros.csc
AgeCommit message (Collapse)AuthorFilesLines
2022-07-12Remove redundant parentheses in the match macro.Rose Hogenson1-20/+20
I'm marginally reducing verbosity with this change, without sacrificing readability.
2022-07-02Write closure conversion.Rose Hogenson1-7/+3
I desperately need a diffing library.
2022-06-28Improve CPS.Rose Hogenson1-24/+13
Goodbye soup. Thanks to "Compiling with Continuations" by Appel.
2022-06-25Continue work on continuation passing style.Rose Hogenson1-5/+6
2022-06-21Comment expand-body.Rose Hogenson1-0/+1
2022-04-22Remove the void type.Rose Hogenson1-7/+5
Why have void? We will just use #f.
2022-04-07Add libraries.Rose Hogenson1-99/+122
Gone is toplevel. Now everyone lives in a library.
2022-04-02Write a test for case-lambda.Rose Hogenson1-12/+25
I'm realizing that I should have started with builtin-exit and implemented the hard stuff later.
2022-03-31Improvements in macros and IR1.Rose Hogenson1-76/+72
We're omitting libraries for now, and I'll add them in later.
2022-03-03Write the compiler frontend.Rose Hogenson1-4/+4
2022-01-24Implement lambda?Rose Hogenson1-12/+110
2022-01-15Finish the macro expander.Rose Hogenson1-83/+291
It works!! At least it passes all the test cases. Next I will: 1. finish the builtins, 2. add a conversion to IR2 in continuation passing style, 3. add a compiler from IR2 to bytecode, 4. and add an option to the frontend compiler to generate a standalone executable.
2022-01-14Write a first draft macro expander.Rose Hogenson1-104/+348
Committing it because it compiles. I have to write tests and debug it still.
2022-01-11Move scheme compiler into a separate directory.Rose Hogenson1-0/+184