!7 static JTextArea ta; p-substance { ta = showText(""); onChangeAndNow(ta, r { fS text = getText(ta); thread { think(text); } }); requestFocus(ta); } sS firstWord(S s) { if (empty(s)) ret ""; if (isLetterOrDigit(first(s))) ret takeCharsWhile(s, f isLetterOrDigit); else ret "" + first(s); } svoid think(S text) { time { S w = firstWord(text); S x = aGlobalID(); /* w is the first word in x. Is x a letter (1) or a program (2)? */ S riddle = quote(w) + " is the first word in " + x + ". Is " + x + " a letter (1) or a program (2)?"; L l = splitIntoSentences(riddle); psl(l); englishToConceptLanguage_concepts.set(findAIConcepts( "rplldtbwbbnlrotj kjuwvfidiwmbjsuc xzhtvnqwzuuzixci mibnjwgfxnetaxyz")); set englishToConceptLanguage_xyz_debug; for (S line : l) { print(line + " => " + englishToConceptLanguage(line)); } } }