RosettaCodeData/Task/Reverse-words-in-a-string/Racket/reverse-words-in-a-string.rkt
2015-02-20 09:02:09 -05:00

27 lines
575 B
Racket

#lang racket/base
(require racket/string)
(define (split-reverse str)
(string-join
(reverse
(string-split str))))
(define poem
"---------- Ice and Fire ------------
fire, in end will world the say Some
ice. in say Some
desire of tasted I've what From
fire. favor who those with hold I
... elided paragraph last ...
Frost Robert -----------------------")
(let ([poem-port (open-input-string poem)])
(let loop ([l (read-line poem-port)])
(unless (eof-object? l)
(begin (displayln (split-reverse l))
(loop (read-line poem-port))))))