I forgot about your desire to remove 0-coefficent terms: (define (add-term a n q) (if (= a 0) q (cons (cons a n) q)))
(define (poly-simp p)
(define-values (a n q)
(for/fold ((a 0) (n 0) (q '())) ((x (sort p < #:key cdr)))
(define b (car x))
(define k (cdr x))
(if (= n k)
(values (+ a b) n q)
(values b k (add-term a n q)))))
(add-term a n q))
____________________
Racket Users list:
http://lists.racket-lang.org/users

