;;; $Id$ (defrep parsed-exp datum) (deftype make-varref (-> (symbol) parsed-exp)) (deftype varref? (-> (parsed-exp) boolean)) (deftype varref->var (-> (parsed-exp) symbol)) (deftype make-lit (-> (number) parsed-exp)) (deftype lit? (-> (parsed-exp) boolean)) (deftype lit->datum (-> (parsed-exp) number)) (deftype make-app (-> (parsed-exp (list parsed-exp)) parsed-exp)) (deftype app? (-> (parsed-exp) boolean)) (deftype app->rator (-> (parsed-exp) parsed-exp)) (deftype app->rands (-> (parsed-exp) (list parsed-exp))) (deftype make-if (-> (parsed-exp parsed-exp parsed-exp) parsed-exp)) (deftype if? (-> (parsed-exp) boolean)) (deftype if->test-exp (-> (parsed-exp) parsed-exp)) (deftype if->then-exp (-> (parsed-exp) parsed-exp)) (deftype if->else-exp (-> (parsed-exp) parsed-exp)) (deftype make-when (-> (parsed-exp parsed-exp) parsed-exp)) (deftype when? (-> (parsed-exp) boolean)) (deftype when->test (-> (parsed-exp) parsed-exp)) (deftype when->body (-> (parsed-exp) parsed-exp))