(define fract-part'
    (lambda (bin)
        (cond
            ( (null? bin) 0 )
            ( else (+ (* (car bin) (/ 1 (expt 2 (length bin)))) (fract-part' (cdr bin)))))))
 
(define fract-part
    (lambda (bin)
        (fract-part' (reverse bin))))


(map (lambda (n) (display n) (display " ")) (map fract-part '( (0) (0 1) (1 0 1) (1) (1 1) (0 1 0 1))))