;; testing variants ;; this will currently fail because case is not yet implemented (datatype bool (:true) (:false)) (define (+ a b) (%%cexp (int int -> int) "%0+%1" a b)) (let ((x (:fnord 12)) (y (:blort #f)) (z (:shlum "howdy")) ) ;; three args: (success-cont, failure-cont, sum) (&vcase (fnord) (lambda (a) (+ a 3)) (lambda (b) (&vcase (blort) (lambda (c) (if c 99 34)) (lambda (d) 19) b)) z))