I get an error message for the code below. It's just a simple syntax error, but as a beginner I'm not sure what's wrong. Anybody know?
(define qsort
  (lambda (input-list)
    (define sort-pivot-iter
      (lambda (input-list pivot acc)
        (let ([current             (first input-list)]
          [pivot-less          (first acc)]
          [pivot-greater-equal (first (rest acc))])
            (cond (
                 [(empty? input-list) acc]
                 [(<  current pivot) (sort-pivot-iter (rest input-list) pivot  
                  '((cons current pivot-less) pivot-greater-equal))]
                 [(>= current pivot) (sort-pivot-iter (rest input-list) pivot  
                  '(pivot-less (cons current pivot-greater-equal)))])))))
    (let* ([pivot (first input-list)]
       [pivot-sorted (sort-pivot-iter 
                   (rest input-list) pivot (list empty empty))]
       [left (first pivot-sorted)]
       [right (first (rest pivot-sorted))])
        (cond
          [(< (length input-list) 2) input-list]
          [else (append (qsort left) '(pivot) (qsort right))]))))
(qsort '(2 3 1))