(include "lib/core.scm") (define (print-imm x) (%%cexp ('a -> int) "fprintf (stderr, \"code=%%p\\n\", (object*)%0)" x)) (datatype foo (:one) (:two) (:three) ) (datatype glork (:a) (:b) ) (define bar (foo:one) -> 1 (foo:two) -> 2 (foo:three) -> 3 ) (printn (bar (foo:one))) (printn (bar (foo:two))) (printn (bar (foo:three))) (print-imm (foo:one)) (print-imm (foo:two)) (print-imm (foo:three)) ;(print-imm #t) ;(print-imm #f) ;(print-imm (glork:a)) ;(print-imm (glork:b))