(define (square-roots myList) (if (null? myList) '() (cons (sqrt (car myList)) (square-roots (cdr myList))))) Welcome to DrScheme, version 205. Language: Textual (MzScheme, includes R5RS). > (square-roots '(1 2 3 4 100 200 500)) (1 1.4142135623730951 1.7320508075688772 2 10 14.142135623730951 22.360679774997898) > (map sqrt '(2 4 6 8 100 625)) (1.4142135623730951 2 2.449489742783178 2.8284271247461903 10 25) > (positives '(1 3 5 -22 44 0 -16 -8 444)) (1 3 5 44 444) (define (positives myList) (cond ((null? myList) '()) ((positive? (car myList)) (cons (car myList) (positives (cdr myList)))) (else (positives (cdr myList))))) > (square-roots (positives '(-1000 25 18 -16 1024 0))) (5 4.242640687119285 32) (define (atom? element) (not (list? element))) (define (count-atoms myList) (cond ((null? myList) 0) ((atom? (car myList)) (+ 1 (count-atoms (cdr myList)))) (else (+ (count-atoms (car myList)) (count-atoms (cdr myList)))))) > (list? '(3)) #t > (list? '3) #f > (atom? '33) #t > (count-atoms '(1 2 3 (44 55 66) 7 88 (99 1010) ())) 10 > (define myList '(2 4 6 8 10 12 14)) > (list-tail myList 4) (10 12 14) > (list-tail myList 0) (2 4 6 8 10 12 14) > (list-tail myList 7) () > (list 33 55) (33 55) > (cons '(22 33) '(44 55 66 77)) ((22 33) 44 55 66 77) > (listify 123 '(222 333 444)) (123 222 333 444) > (listify 123 555) (123 555) (define (listify element1 element2) ((if (list? element2) cons list) element1 element2))