;; A ListOfString (LoS) is either ;; -- empty ;; -- (cons String LoS) #| ;; f: LOS -> ?? (define (f l) (cond [(empty? l) ... ] [(cons? l) ... (first l) ... (f (rest l) ... ) ])) |# ;; list->string: LoS -> String ;; appends all the Strings in los (define (string-list los) (cond [(empty? los) ""] [(cons? los) (string-append (first los) " " (string-list (rest los)))])) ;; Examples/Test (string=? (string-list empty) "") (string=? (string-list (cons "1" empty)) "1 ") (string=? (string-list (cons "1" (cons "2" empty))) "1 2 ")