From 42c60036dd9b07c474c4c8425669c33495529f85 Mon Sep 17 00:00:00 2001 From: Rose Hogenson Date: Thu, 31 Mar 2022 19:55:20 -0700 Subject: Improvements in macros and IR1. We're omitting libraries for now, and I'll add them in later. --- csc/ir2.csc | 34 ++++++++++------------------------ 1 file changed, 10 insertions(+), 24 deletions(-) (limited to 'csc/ir2.csc') diff --git a/csc/ir2.csc b/csc/ir2.csc index 1542f1e..0c37d6c 100644 --- a/csc/ir2.csc +++ b/csc/ir2.csc @@ -10,8 +10,6 @@ make-lambda-case ; Re-exports from IR1. - lambda? - make-lambda call-arguments call-procedure call? @@ -21,22 +19,14 @@ if-consequent if-test if? - library-ref-library - library-ref-name - library-ref-public? - library-ref? - library-set-expression - library-set-library - library-set-name - library-set-public? - library-set? + lambda? make-call make-constant make-if - make-library-ref - make-library-set + make-lambda make-sequence make-toplevel-define + make-toplevel-ref make-void sequence-head sequence-tail @@ -44,6 +34,8 @@ toplevel-define-expression toplevel-define-name toplevel-define? + toplevel-ref-name + toplevel-ref? void?) (import (scheme base) (only (csc ir1) @@ -58,21 +50,10 @@ if? lambda-body lambda? - library-ref-library - library-ref-name - library-ref-public? - library-ref? - library-set-expression - library-set-library - library-set-name - library-set-public? - library-set? make-call make-constant make-if make-lambda - make-library-ref - make-library-set make-sequence make-toplevel-define make-void @@ -88,6 +69,11 @@ ; It's CPS time bitch. + ; + (define-record-type + (make-variable k var + + ; idx ; Reference to a variable by index in the closure. (define-record-type -- cgit v1.3.1