static O dm_javaEvalOrInterpret(S code) { final O module = dm_current_generic(); // dm_current_mandatory_generic(); code = trim(code); if (canQuickEval(code)) ret quickEval(code); Pair> p = tok_parseFunctionCall(code); if (p != null) { if (module != null) makeAndCall_setInitInThread(func(Class c) -> AutoCloseable { shareMyCreatorWith(c); InheritableThreadLocal tl = cast getOpt(c, 'dm_currentModule_value); ret tempSetTL(tl, weakRef(module)); }); ret callAndMake(p.a, toObjectArray(lmap dm_javaEvalOrInterpret(p.b))); } ret dm_javaEval(code); }