Implementing Pairs

left top right

(define (make-pair a b)
  ; Traditionally called CONS (for "construct")
  (lambda (which?)
    (if (= which? 1)
        a
        b)))

(define (left pair)
  ; Traditionally called CAR
  (pair 1))

(define (right pair)
  ; Traditionally called CDR
  (pair 2))

Jim Miller W3C