("compat" :host)
("utils" :both)
("numbers" :target)
+ ("char" :target)
("list" :target)
("array" :target)
("string" :target)
("sequence" :target)
+ ("stream" :target)
("print" :target)
("package" :target)
- ("ffi" :target)
("misc" :target)
+ ("ffi" :both)
("read" :both)
("defstruct" :both)
("lambda-list" :both)
+ ("backquote" :both)
+ ("compiler-codegen" :both)
("compiler" :both)
("toplevel" :target)))
(defun dump-global-environment (stream)
(flet ((late-compile (form)
- (write-string (ls-compile-toplevel form) stream)))
+ (let ((*standard-output* stream))
+ (write-string (ls-compile-toplevel form)))))
;; We assume that environments have a friendly list representation
;; for the compiler and it can be dumped.
(dolist (b (lexenv-function *environment*))
;; not collide with the compiler itself.
(late-compile
`(progn
- ,@(mapcar (lambda (s) `(%intern-symbol (%js-vref ,(cdr s))))
- (remove-if-not #'symbolp *literal-table* :key #'car))
+ (progn ,@(mapcar (lambda (s) `(%intern-symbol (%js-vref ,(cdr s))))
+ (remove-if-not #'symbolp *literal-table* :key #'car)))
(setq *literal-table* ',*literal-table*)
(setq *variable-counter* ,*variable-counter*)
(setq *gensym-counter* ,*gensym-counter*)))