public static StringWrapper javaTranslateFunctionName(MethodSlot function) {
    { Symbol functionname = Symbol.yieldRenamedNameIfNative(function.slotName, Stella.KWD_JAVA, Stella.KWD_FUNCTION);
      String translatedname = null;

      if (MethodSlot.javaMethodObjectIsOverloadedFunctionP(function)) {
        functionname = Symbol.javaCreateOverloadedFunctionName(functionname, function.slotOwner);
      }
      translatedname = Symbol.javaTranslateName(functionname).wrapperValue;
      if (function.methodSetterP) {
        translatedname = translatedname + "_setter";
      }
      if (MethodSlot.slotReaderP(function)) {
        translatedname = translatedname + "_reader";
      }
      return (StringWrapper.wrapString(translatedname));
    }
  }