!7 static SimpleLiveValue output = new(S); static SimpleLiveValue input = new(S); static ReliableSingleThread rst = new(f parse); static JComponent visualize() { ret jLiveValueTextArea(output); } p { input.onChange(rTrigger(rst)); } svoid update { input.set((S) callOpt(creator(), 'getInterestingString)); } svoid parse { output.set("Parsing..."); try { javaParseCompilationUnit(input!); output.set("Text parses as Java compilation unit"); } catch e { output.set(firstLine(getInnerMessage(e))); } }