; first word
(define (string-index c str)
(let loop ((ss (string->list str)) (k 0))
(cond ((null? ss) #f)
((char=? (car ss) c) k)
(else (loop (cdr ss) (+ k 1))))))
(define (first-word str)
(substring str 0 (string-index #\space str)))
(display (first-word "abcdefg hijklmnop qrs tuv wxyz"))
OyBmaXJzdCB3b3JkCgooZGVmaW5lIChzdHJpbmctaW5kZXggYyBzdHIpCiAgKGxldCBsb29wICgoc3MgKHN0cmluZy0+bGlzdCBzdHIpKSAoayAwKSkKICAgIChjb25kICgobnVsbD8gc3MpICNmKQogICAgICAgICAgKChjaGFyPT8gKGNhciBzcykgYykgaykKICAgICAgICAgIChlbHNlIChsb29wIChjZHIgc3MpICgrIGsgMSkpKSkpKQoKKGRlZmluZSAoZmlyc3Qtd29yZCBzdHIpCiAgKHN1YnN0cmluZyBzdHIgMCAoc3RyaW5nLWluZGV4ICNcc3BhY2Ugc3RyKSkpCgooZGlzcGxheSAoZmlyc3Qtd29yZCAiYWJjZGVmZyBoaWprbG1ub3AgcXJzIHR1diB3eHl6Iikp