1.3 Example: Data definition for unions
;; Data definition
;; A Shape is either
;; - a Circle
;; - a Rectangle
;; - a Dot
;; We also need structure definitions for the Circle, the Rectangle, and the Dot
;; A Circle is a structure: Posn Number
(define-struct circle (center radius))
;; A Rectangle is a structure: Posn Number Number
(define-struct rect (nw width height))
;; A Dot is a Posn (alternately, could be a struct with one field that
;; is a Posn)
;; Examples:
(define cir1 (make-circle p1 10))
(define cir2 (make-circle p2 15))
(define rect1 (make-rect p1 20 30))
(define rect2 (make-rect p2 20 10))
(define dot1 p1)
(define dot2 p2)
;; Examples of shapes:
;; cir1, cir2, rect1, tect2, dot1, and dot2 are examples of shapes