Talvez fique até mais simples.
#xcommand INIT WINDOW <oWnd> ;
[ MAIN ] ;
[<lMdi: MDI>] ;
[ APPNAME <appname> ] ;
[ TITLE <cTitle> ] ;
[ AT <x>, <y> ] ;
[ SIZE <width>, <height> ] ;
[ ICON <ico> ] ;
[ COLOR <clr> ] ;
[ BACKGROUND BITMAP <oBmp> [ STRETCH <nStretch>] ] ;
[ STYLE <nStyle> ] ;
[ FONT <oFont> ] ;
[ MENU <cMenu> ] ;
[ MENUPOS <nPos> ] ;
[ ON MENU <bMdiMenu> ] ;
[ ON INIT <bInit> ] ;
[ ON SIZE <bSize> ] ;
[ ON PAINT <bPaint> ] ;
[ ON GETFOCUS <bGfocus> ] ;
[ ON LOSTFOCUS <bLfocus> ] ;
[[ON OTHER MESSAGES <bOther>][ON OTHERMESSAGES <bOther>]] ;
[ ON REFRESH <bRefresh> ] ;
[ ON CLOSEQUERY <bCloseQuery> ];
[ ON EXIT <bExit> ] ;
[ HELP <cHelp> ] ;
[ HELPID <nHelpId> ] ;
=> ;
<oWnd> := HMainWindow():New( Iif(<.lMdi.>,WND_MDI,WND_MAIN), ;
<ico>,<clr>,<nStyle>,<x>,<y>,<width>,<height>,<cTitle>, ;
<cMenu>,<nPos>,<oFont>,<bInit>,<bExit>,<bSize>,<bPaint>,;
<bGfocus>,<bLfocus>,<bOther>,<appname>,<oBmp>,<cHelp>,<nHelpId>,;
<bCloseQuery>,<bRefresh>,<bMdiMenu>,<nStretch>)
Em oop, vão continuar sendo várias linhas de resultado, mas usando OOP ao invés de muuuitos parâmetros que impedem mexidas adicionais.
Apenas a prioridade deixararia de ser compatibilidade, mesmo que a princÃpio tudo indique que vai continuar existindo.
Em HMGExtended isso é mais perceptÃvel... só não pode usar codeblock em grids porque o arquivo .CH foi definido de modo a não permitir isso.