403b71b344bc — Linus Bj√∂rnstam 4 years ago
Fixed new-cond

Now use letrec* instead of letrec
1 files changed, 5 insertions(+), 4 deletions(-)

M syntax/define.scm
M syntax/define.scm +5 -4
@@ 4,7 4,8 @@ 
 
 
 
-(define-module (syntax define)
+(define-module (syntax define
+                       )
   #:use-module (ice-9 receive)
   #:replace ((new-lambda . lambda)
              (new-define . define)

          
@@ 86,7 87,7 @@ 
      (receive vals test
        (if (apply guard vals)
            (apply (new-begin body ...) vals)
-           (internal-cond rest ...))))
+           (new-cond rest ...))))
 
     ;; Lambda case
     ((_ (test => body ...) rest ...)

          
@@ 106,7 107,7 @@ 
     ((_ (test body ...) rest ...)
      (if test
           (new-begin body ...)
-          (internal-cond rest ...)))))
+          (new-cond rest ...)))))
 
 
 

          
@@ 123,7 124,7 @@ 
 
     ;; Exit
     ((_ clauses rest ...)
-     (letrec clauses
+     (letrec* clauses
        (%parse-body () rest ...)))))
 
 ;; A macro that transverses expressions