!7 module CoarseSplitter > DynModule { S text, function; LS output; transient JList outputList; visualize { ret withMargin(jvsplit( jSection("INPUT", dm_fieldTextArea('text)), northAndCenterWithMargin( centerAndEastWithMargin( withLabel("Split function:", onEnter(rThread compute, dm_fieldTextField('function))), jbutton("Compute", rThread compute)), jSection("OUTPUT", jLiveValueList(dm_fieldLiveValue('output)))))); } void compute enter { setField(output := assertStringList(callAndMake(function, text))); } }