svoid dm_handleEvalResult(O value, S shortened) { // handle images, GUI components, ... if (value cast Renderable) value = renderableToImage(value); if (value cast BufferedImage) dm_showImage(value); else if (implementsInterfaceShortNamed(value, "MakesBufferedImage")) dm_showImage((BufferedImage) rcall getBufferedImage(value)); else if (value instanceof Component && getParent((Component) value) == null) showFrame(shortened, (Component) value); // handle Offer objects remutable value; if (shortClassNameIs Offer(value)) thread { if (confirmYesNo(str(value))) callF(value); } }