!7 set flag DynModule. // use central transpiler cmodule StandardFunction { switchable S functionName; transient DynamicCallable f; transient Throwable error; start { onChange(r { setModuleName("Function " + functionName); }); loadFunction(); } visual centerAndEastWithMargins( withLabel("Function:", dm_label('functionName)), jThreadedButton("Choose...", rEnter { dm_stringFieldDialog('functionName) })); void loadFunction() q { try { f = methodAsDynamicCallable(loadFunctions_cached(functionName), functionName); } catch e { error = e; } } // API S functionName() { ret functionName; } O callTheFunction(O... args) { while (f == null && error == null) sleep(10); if (error != null) throw rethrow(error); ret callF(f, args); } }