; doubled letters
(define (double? str)
(let loop ((cs (string->list str)))
(cond ((or (null? cs) (null? (cdr cs))) #f)
((char=? (car cs) (cadr cs)) #t)
(else (loop (cdr cs))))))
(define (complement f) (lambda xs (not (apply f xs))))
(define (remove-doubled words) (filter (complement double?) words))
(display
(map string->symbol
(remove-doubled
(map symbol->string
'(Now is the time for all good men to come to the aid of their country)))))
OyBkb3VibGVkIGxldHRlcnMKCihkZWZpbmUgKGRvdWJsZT8gc3RyKQogIChsZXQgbG9vcCAoKGNzIChzdHJpbmctPmxpc3Qgc3RyKSkpCiAgICAoY29uZCAoKG9yIChudWxsPyBjcykgKG51bGw/IChjZHIgY3MpKSkgI2YpCiAgICAgICAgICAoKGNoYXI9PyAoY2FyIGNzKSAoY2FkciBjcykpICN0KQogICAgICAgICAgKGVsc2UgKGxvb3AgKGNkciBjcykpKSkpKQoKKGRlZmluZSAoY29tcGxlbWVudCBmKSAobGFtYmRhIHhzIChub3QgKGFwcGx5IGYgeHMpKSkpCgooZGVmaW5lIChyZW1vdmUtZG91YmxlZCB3b3JkcykgKGZpbHRlciAoY29tcGxlbWVudCBkb3VibGU/KSB3b3JkcykpCgooZGlzcGxheQogIChtYXAgc3RyaW5nLT5zeW1ib2wKICAgIChyZW1vdmUtZG91YmxlZAogICAgICAobWFwIHN5bWJvbC0+c3RyaW5nCiAgICAgICAgJyhOb3cgaXMgdGhlIHRpbWUgZm9yIGFsbCBnb29kIG1lbiB0byBjb21lIHRvIHRoZSBhaWQgb2YgdGhlaXIgY291bnRyeSkpKSkp