aboutsummaryrefslogtreecommitdiffstats
path: root/csc/ir2.csc
diff options
context:
space:
mode:
authorRose Hogenson <rhogenson@posteo.net>2022-03-31 19:55:20 -0700
committerRose Hogenson <rhogenson@posteo.net>2022-03-31 19:55:20 -0700
commit42c60036dd9b07c474c4c8425669c33495529f85 (patch)
treedda8492af53741f4b8f55a0d9b2ace4b36090922 /csc/ir2.csc
parentAllow overriding the cmp function in assert-equal. (diff)
downloadchromatopelma-42c60036dd9b07c474c4c8425669c33495529f85.tar.zst
Improvements in macros and IR1.
We're omitting libraries for now, and I'll add them in later.
Diffstat (limited to 'csc/ir2.csc')
-rw-r--r--csc/ir2.csc34
1 files changed, 10 insertions, 24 deletions
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.
+ ; <variable>
+ (define-record-type <variable>
+ (make-variable k var
+
+
; <closure-ref> idx
; Reference to a variable by index in the closure.
(define-record-type <closure-ref>