public static FValue eval(String file, List<String> args, boolean unCacheWhenDone) throws Throwable { setPhaseOrder(PhaseOrder.interpreterPhaseOrder); if (!isComponent(file)) throw new UserError(file + " is not a component file."); APIName name = NodeUtil.apiName(file); Path path = sourcePath(file, name); GraphRepository bcr = specificInterpreterRepository(path); ComponentIndex c = bcr.getLinkedComponent(name); FValue result = Driver.runProgram(bcr, c, args); bcr.deleteComponent(c.ast().getName(), unCacheWhenDone); return result; }