public static void startupPowerloom() {
    { Object old$Module$000 = Stella.$MODULE$.get();
      Object old$Context$000 = Stella.$CONTEXT$.get();

      try {
        Native.setSpecial(Stella.$MODULE$, Stella.getStellaModule("/LOGIC", Stella.$STARTUP_TIME_PHASE$ > 1));
        Native.setSpecial(Stella.$CONTEXT$, ((Module)(Stella.$MODULE$.get())));
        if (Stella.currentStartupTimePhaseP(2)) {
          Logic.KWD_LOG_LEVELS = ((Keyword)(GeneralizedSymbol.internRigidSymbolWrtModule("LOG-LEVELS", null, 2)));
          Logic.KWD_PREFIX = ((Keyword)(GeneralizedSymbol.internRigidSymbolWrtModule("PREFIX", null, 2)));
          Logic.KWD_MAX_WIDTH = ((Keyword)(GeneralizedSymbol.internRigidSymbolWrtModule("MAX-WIDTH", null, 2)));
          Logic.SYM_LOGIC_STARTUP_POWERLOOM = ((Symbol)(GeneralizedSymbol.internRigidSymbolWrtModule("STARTUP-POWERLOOM", null, 0)));
        }
        if (Stella.currentStartupTimePhaseP(4)) {
          Logic.$POWERLOOM_VERSION_STRING$ = "PowerLoom " + Native.integerToString(((long)(Logic.$POWERLOOM_MAJOR_VERSION_NUMBER$))) + "." + Native.integerToString(((long)(Logic.$POWERLOOM_MINOR_VERSION_NUMBER$))) + "." + Native.integerToString(((long)(Logic.$POWERLOOM_PATCH_LEVEL$))) + Logic.$POWERLOOM_RELEASE_STATE$;
          Logic.$POWERLOOM_EXECUTION_MODE$ = Logic.KWD_RELEASE;
          Logic.$POWERLOOM_LOCK$ = Stella.makeProcessLock();
        }
        if (Stella.currentStartupTimePhaseP(6)) {
          Stella.finalizeClasses();
        }
        if (Stella.currentStartupTimePhaseP(7)) {
          Stella.defineFunctionObject("PL-LOG", "(DEFUN PL-LOG ((LOGLEVEL KEYWORD) |&REST| (MESSAGE OBJECT)))", Native.find_java_method("edu.isi.powerloom.logic.Logic", "plLog", new java.lang.Class [] {Native.find_java_class("edu.isi.stella.Keyword"), Native.find_java_class("edu.isi.stella.Cons")}), null);
          Stella.defineFunctionObject("POWERLOOM-INFORMATION", "(DEFUN (POWERLOOM-INFORMATION STRING) () :DOCUMENTATION \"Returns information about the current PowerLoom implementation.\nUseful when reporting problems.\" :PUBLIC? TRUE :COMMAND? TRUE)", Native.find_java_method("edu.isi.powerloom.logic.Logic", "powerloomInformation", new java.lang.Class [] {}), Native.find_java_method("edu.isi.powerloom.logic.Logic", "powerloomInformationEvaluatorWrapper", new java.lang.Class [] {Native.find_java_class("edu.isi.stella.Cons")}));
          Stella.defineFunctionObject("POWERLOOM-COPYRIGHT-HEADER", "(DEFUN (POWERLOOM-COPYRIGHT-HEADER STRING) ())", Native.find_java_method("edu.isi.powerloom.logic.Logic", "powerloomCopyrightHeader", new java.lang.Class [] {}), null);
          Stella.defineFunctionObject("COPYRIGHT", "(DEFUN COPYRIGHT () :COMMAND? TRUE :PUBLIC? TRUE :DOCUMENTATION \"Print detailed PowerLoom copyright information.\")", Native.find_java_method("edu.isi.powerloom.logic.Logic", "copyright", new java.lang.Class [] {}), null);
          Stella.defineFunctionObject("COPYRIGHT-YEARS", "(DEFUN (COPYRIGHT-YEARS STRING) ())", Native.find_java_method("edu.isi.powerloom.logic.Logic", "copyrightYears", new java.lang.Class [] {}), null);
          Stella.defineFunctionObject("POWERLOOM", "(DEFUN POWERLOOM () :DOCUMENTATION \"Run the PowerLoom listener.  Read logic commands from the\nstandard input, evaluate them, and print their results.  Exit if the user\nentered `bye', `exit', `halt', `quit', or `stop'.\" :PUBLIC? TRUE)", Native.find_java_method("edu.isi.powerloom.logic.Logic", "powerloom", new java.lang.Class [] {}), null);
          Stella.defineFunctionObject("STARTUP-POWERLOOM", "(DEFUN STARTUP-POWERLOOM () :PUBLIC? TRUE)", Native.find_java_method("edu.isi.powerloom.logic._StartupPowerloom", "startupPowerloom", new java.lang.Class [] {}), null);
          { MethodSlot function = Symbol.lookupFunction(Logic.SYM_LOGIC_STARTUP_POWERLOOM);

            KeyValueList.setDynamicSlotValue(function.dynamicSlots, Logic.SYM_STELLA_METHOD_STARTUP_CLASSNAME, StringWrapper.wrapString("_StartupPowerloom"), Stella.NULL_STRING_WRAPPER);
          }
        }
        if (Stella.currentStartupTimePhaseP(8)) {
          Stella.finalizeSlots();
          Stella.cleanupUnfinalizedClasses();
        }
        if (Stella.currentStartupTimePhaseP(9)) {
          Stella_Object.inModule(((StringWrapper)(Stella_Object.copyConsTree(StringWrapper.wrapString("LOGIC")))));
          Stella.defineStellaGlobalVariableFromStringifiedSource("(DEFGLOBAL *POWERLOOM-MAJOR-VERSION-NUMBER* INTEGER 4)");
          Stella.defineStellaGlobalVariableFromStringifiedSource("(DEFGLOBAL *POWERLOOM-MINOR-VERSION-NUMBER* INTEGER 0)");
          Stella.defineStellaGlobalVariableFromStringifiedSource("(DEFGLOBAL *POWERLOOM-RELEASE-STATE* STRING \".beta\")");
          Stella.defineStellaGlobalVariableFromStringifiedSource("(DEFGLOBAL *POWERLOOM-PATCH-LEVEL* INTEGER 6)");
          Stella.defineStellaGlobalVariableFromStringifiedSource("(DEFGLOBAL *POWERLOOM-VERSION-STRING* STRING (CONCATENATE \"PowerLoom \" (INTEGER-TO-STRING *POWERLOOM-MAJOR-VERSION-NUMBER*) \".\" (INTEGER-TO-STRING *POWERLOOM-MINOR-VERSION-NUMBER*) \".\" (INTEGER-TO-STRING *POWERLOOM-PATCH-LEVEL*) *POWERLOOM-RELEASE-STATE*))");
          Stella.defineStellaGlobalVariableFromStringifiedSource("(DEFGLOBAL *POWERLOOM-EXECUTION-MODE* KEYWORD :RELEASE :DOCUMENTATION \"Either :development, :debugging or :release (so far) which controls\nwhether certain internal error and warning messages are surfaced to the user.\")");
          Stella.setLoggingParameters("PowerLoom", Cons.cons(Logic.KWD_LOG_LEVELS, Cons.cons(Stella.getQuotedTree("((:NONE :LOW :MEDIUM :HIGH) \"/LOGIC\")", "/LOGIC"), Cons.cons(Logic.KWD_LEVEL, Cons.cons(((Logic.$POWERLOOM_EXECUTION_MODE$ == Logic.KWD_DEVELOPMENT) ? Logic.KWD_MEDIUM : Logic.KWD_LOW), Cons.cons(Logic.KWD_PREFIX, Cons.cons(StringWrapper.wrapString("PL"), Cons.cons(Logic.KWD_MAX_WIDTH, Cons.cons(IntegerWrapper.wrapInteger(250), Stella.NIL)))))))));
          Stella.defineStellaGlobalVariableFromStringifiedSource("(DEFGLOBAL *POWERLOOM-LOCK* PROCESS-LOCK-OBJECT (MAKE-PROCESS-LOCK) :PUBLIC? TRUE :DOCUMENTATION \"Lock object for synchronizing safe multi-process access to PowerLoom\")");
        }

      } finally {
        Stella.$CONTEXT$.set(old$Context$000);
        Stella.$MODULE$.set(old$Module$000);
      }
    }
  }