Here is a solution to count-short-strings:
;; count-short-strings: list-of-string -> number ;; consumes a list of strings and produces the number ;; of strings in the list with fewer than 6 characters (define (count-short-strings alos) (cond [(empty? alos) 0] [(cons? alos) (cond [(< (string-length (first alos)) 6) (+ 1 (count-short-strings (rest alos)))] [else (count-short-strings (rest alos))])]))An alternative way to write the function is like this:
;; count-short-strings: list-of-string -> number ;; consumes a list of strings and produces the number ;; of strings in the list with fewer than 6 characters (define (count-short-strings alos) (cond [(empty? alos) 0] [(cons? alos) (+ (cond [(< (string-length (first alos)) 6) 1] [else 0]) (count-short-strings (rest alos))))]))