Before someone asks, this is not a homework, I am a Spanish major, but I would like to understand some programming...
(define (x lis)
(cond
((null?? lis) 0)
((not (list? (car lis)))
(cond
((eq? (car lis) nil)
(x (cdr lis)))
(else (+1 (x (cdr lis))))))
(else (+ (x (car lis))
(x (cdr lis))))))