#lang racket ;;;;;;;;; ;; 2.1 ;; ;;;;;;;;; (define (make-rat n d) (cond [(negative? d) (make-rat (- n) (- d))] [else (define g (gcd n d)) ; gcd always > 0 (cons (/ n g) (/ d g))]))