>>>> One of the fast sorts has a structure whose symmetry wrt to two
>>>>variables is obvious with a couple of gotos, but which is lost with
>>>>structured code.
>>>
>>>Are you perhaps referring to the quicksort partitioning step?
>>>If solution symmetry is lost in "structured" code, blame the
>>>programmer's poorly structured thinking, and not the poorly structured
>>>code.
>>
>> When the code is structured the symmetry is not in the code. The
>>two variables appear quite different in use. Do you have a version
>>that retains the symmetry IN THE CODE?
>
>The only asymmetry below seems to be the optimization that requires
>a specific order of operations to replace element swaps by moves.
>Opinion?

[snipped code]

It has been over 20 years, it was an instructor's example, and I
do not recall exactly which fast sort it was. Your code is way longer
than I remember. I grant your code has good symmetry.