procedure main() every write(rWords(&input)) end procedure rWords(f) every !f ? { every (s := "") := genWords() || s suspend s } end procedure genWords() while w := 1(tab(upto(" \t")),tab(many(" \t"))) || " " do suspend w end