python parser
authorStefan Israelsson Tampe <stefan.itampe@gmail.com>
Thu, 5 Apr 2018 12:49:56 +0000 (14:49 +0200)
committerStefan Israelsson Tampe <stefan.itampe@gmail.com>
Thu, 5 Apr 2018 12:49:56 +0000 (14:49 +0200)
modules/language/python/compile.scm

index 8f5139d9dadf8d332cdce29eed483e73437ff600..ad341a546595bc45b689c1622b1b78cd9d454979 100644 (file)
             
 
  (#:return
-  ((_ . x)
-   `(,(fluid-ref return) ,@(map (g vs exp) x))))
+  ((_  x)
+   (if x
+       `(,(fluid-ref return) ,@(map (g vs exp) x))
+       `(,(fluid-ref return)))))
+       
 
  (#:dict
   ((_ . #f)
 
 
 (define-syntax boolit
-  (syntax-rules (and or not)
+  (syntax-rules (and or not < <= > >=)
     ((_ (and x y)) (and (boolit x) (boolit y)))
     ((_ (or  x y)) (or  (boolit x) (boolit y)))
     ((_ (not x  )) (not (boolit x)))
+    ((_ (<   x y)) (<  x y))
+    ((_ (<=  x y)) (<= x y))
+    ((_ (>   x y)) (>  x y))
+    ((_ (>=  x y)) (>= x y))
     ((_ #t) #t)
     ((_ #f) #f)
     ((_ x ) (bool x))))