PLease, let's *not* define (- X) and (/ X) to be something else than X. It might be the source of obscure errors in (admittedly ugly) code like: (define (net-gain gain losses) (apply - gain losses)) Besides that, it may be cute, but it is neither clear nor consistent, and therefore not "in the spirit of Scheme". At least, that's my opinion.