diff --git a/TODO b/TODO index b86c4a21..4bf5e169 100644 --- a/TODO +++ b/TODO @@ -13,7 +13,6 @@ Working TODO list. should start creating issues for these to get them out of her if necessary, write makefile directive to automate rebuilding cyclone for macro development - clean up runtime - - fix up return_ macros, remove cgen comments - remove unused runtime globals, rename others to make more sense - need multiple closure types? maybe just migrate closureN to closure? - remove unused code, old comments, etc diff --git a/scheme/cyclone/macros.sld b/scheme/cyclone/macros.sld index 4d6fe57e..58511081 100644 --- a/scheme/cyclone/macros.sld +++ b/scheme/cyclone/macros.sld @@ -1,5 +1,6 @@ (define-library (scheme cyclone macros) (import (scheme base) + (scheme write) (scheme eval) ;; TODO: without this line, compilation just ;; silently fails. WTF?? (scheme cyclone util)) @@ -64,13 +65,22 @@ defined-macros)) (env (create-environment env-vars env-vals))) ;; Assume evaluated macro +(newline) +(display "/* ") +(display (list 'evaluating-macro macro exp)) +(display " */ ") (eval (list (cdr macro) (list 'quote exp) rename compare?) - ;env +;; TODO: at the moment this causes building cyclone to break because not +;; all macros can be evaluated correctly. suspect some shortcomings in +;; eval compared to compilation? anyway, as of now this line breaks: +;; 1) scheme/base.sld due to macros defined in this module being evaluated +;; 2) test2.scm, because we're trying to debug this issue + env )) ))))