It's weird to see that: (exact? 'a) ================err msg=============== ERROR: In procedure exact?: ERROR: In procedure exact?: Wrong type argument in position 1: a ==================end=================
And I have to do this: (define (fraction? obj) (and (number? obj) (inexact? obj))) Why not 'exact?' and 'inexact?' doesn't check 'number?' first?