!7 sS concepts = [[ xdzeaxtmkazaxncy - Set object to string X ocipgkzuhonmxyxp - Run standard function X on object rkaqgiahlhpqcsfb - Cool! ]]; sO object; sS text; static JTextArea taObject; static JTextField tfCmd; p-awt { blueSteel(); useConcepts(concepts); object = 5; text = struct(object); taObject = wrappedTextArea(text); setFontSize(taObject, 15); tfCmd = jtextfield("ocipgkzuhonmxyxp plus1"); showFrame( centerAndSouth(jSection("Object", taObject), jSection("Command", textFieldWithButton("Go", tfCmd)))); onEnter(tfCmd, f go); requestFocus(tfCmd); hideConsole(); } svoid go { tfCmd.selectAll(); final Lisp cmd = englishToLisp(getTextTrim(tfCmd)); thread { pcall-messagebox { loading { if (cmd.is("ocipgkzuhonmxyxp", 1)) // Run standard function X on object setObject(makeAndCall_cached(cmd.raw(0), object); if (cmd.is("xdzeaxtmkazaxncy", 1)) // Set object to string X setObject(cmd.raw(0)); if (cmd.is("rkaqgiahlhpqcsfb")) infoBox("Thanks!"); }}} } svoid setObject(fO o) swing { object = o; try { text = struct(o); } catch e { text = getStackTrace(e); } taObject.setText(text); }