/* Array reverse */                              /* Array reverse, canonical version */

# ArraySort                                      /* # ArraySort                      */

ArraySort ->                                     /* Reverse ->                       */
Arg Array : ^Array,                              /* Arg A : ^Array                   */
    . : REVERSE_SORT                             /*                                  */
                                                 /* Do First = i,                    */
Steps = Array._ % 2                              /*    Second = ( A._ + 1 ) - i,     */
                                                 /*    A.First = A.Second = A.First  */
Do First = i,                                    /* Where i = 1 to A._ % 2           */
   Second = ( Array._ + 1 ) - i,                 /*                                  */
   Array.First = Array.Second = Array.First      /* /                                */
Where i = 1 to Steps
                                                 /* # >> Reverse                     */
/

# >> ArraySort