;;; $Id: record-lambda-1+number-exp.def,v 1.3 1998/10/07 19:04:02 leavens Exp $

trustme!

(defrep lambda-1+number-exp datum)

(deftype lit? (-> (lambda-1+number-exp) boolean))
(deftype make-lit (-> (number) lambda-1+number-exp))
(deftype lit->datum (-> (lambda-1+number-exp) number))
(deftype varref? (-> (lambda-1+number-exp) boolean))
(deftype make-varref (-> (symbol) lambda-1+number-exp))
(deftype varref->var (-> (lambda-1+number-exp) symbol))
(deftype lambda? (-> (lambda-1+number-exp) boolean))
(deftype make-lambda (-> (symbol lambda-1+number-exp) lambda-1+number-exp))
(deftype lambda->formal (-> (lambda-1+number-exp) symbol))
(deftype lambda->body (-> (lambda-1+number-exp) lambda-1+number-exp))
(deftype app? (-> (lambda-1+number-exp) boolean))
(deftype make-app (-> (lambda-1+number-exp lambda-1+number-exp) lambda-1+number-exp))
(deftype app->rator (-> (lambda-1+number-exp) lambda-1+number-exp))
(deftype app->rand (-> (lambda-1+number-exp) lambda-1+number-exp))

(deftype lambda-1+number-exp? (-> (datum) boolean))
(deftype parse-lambda-1+number-exp (-> (datum) lambda-1+number-exp))
(deftype unparse-lambda-1+number-exp (-> (lambda-1+number-exp) datum))
