diff --git a/il-structs.rkt b/il-structs.rkt index cb11492..7e8be57 100644 --- a/il-structs.rkt +++ b/il-structs.rkt @@ -34,9 +34,9 @@ (define-struct: EnvWholePrefixReference ([depth : Natural]) #:transparent) - -(define-type LexicalReference (U EnvLexicalReference - EnvWholePrefixReference)) +;; An environment reference +(define-type EnvReference (U EnvLexicalReference + EnvWholePrefixReference)) @@ -111,7 +111,7 @@ ;; Constructs a closure, given the label and the set of lexical references ;; into the environment that the closure needs to close over. (define-struct: MakeCompiledProcedure ([label : Symbol] - [closed-vals : (Listof LexicalReference)]) + [closed-vals : (Listof EnvReference)]) #:transparent) ;; Applies the primitive procedure that's stored in the proc register, using diff --git a/lexical-env.rkt b/lexical-env.rkt index 241b037..fc6ef1f 100644 --- a/lexical-env.rkt +++ b/lexical-env.rkt @@ -97,7 +97,6 @@ (loop (rest addresses))]))])))) -(define-type EnvReference (U EnvLexicalReference EnvWholePrefixReference)) (: lexical-references->compile-time-environment ((Listof EnvReference) CompileTimeEnvironment CompileTimeEnvironment -> CompileTimeEnvironment)) diff --git a/lexical-structs.rkt b/lexical-structs.rkt index 59a5026..4fa5647 100644 --- a/lexical-structs.rkt +++ b/lexical-structs.rkt @@ -11,6 +11,9 @@ #:transparent) + + + (define-type CompileTimeEnvironmentEntry (U False ;; placeholder for temporary space Symbol ;; lexically bound local identiifer Prefix ;; a prefix