In order to use the new PARSE function as a replacement for the old RUN(submap) constructs, the PARSE function should have similar behavior as RUN(submap). This essentially requires 2 enhancements:
1.) We need to pass arguments to PARSE like "-F21 -Z28", so that PARSE will use the same error handling as our current RUN(submaps). Overriding the trace settings is also used very often, e.g. "-TIC1", as well as specifying audit settings like "-ADEU=audits" and workspace parameters like "-P512:512". Basically PARSE should be able to handle all these parameters.
2.) PARSE should throw errors and set LASTERRORMSG as well as LASTERRORCODE, so that we can use it in a VALID(PARSE(), FAIL()) construct.