TAO in Action Index   <<   >>
 

   Q←{1≥≢⍵:⍵ ⋄ s←⍵ ⍺⍺ ⍵⌷⍨⊂?≢⍵ ⋄ (∇ ⍵⌿⍨0>s)⍪(⍵⌿⍨0=s)⍪(∇ ⍵⌿⍨0<s)}

   qsort  ← {{(⍵ le ⍺)-(⍺ le ⍵)}⍤¯1 999 Q ⍵}
   qgrade ← {, 0 1↓ qsort ⍵{⍺⍵}⍤¯1 ⍳≢⍵}

   x←3 1 4 1 5 9 2 6 5 3 5 8 9 7 9

   qsort x
1 1 2 3 3 4 5 5 5 6 7 8 9 9 9
   {(⊂⍋⍵)⌷⍵} x
1 1 2 3 3 4 5 5 5 6 7 8 9 9 9

   qgrade x
1 3 6 0 9 2 4 8 10 7 13 11 5 12 14
   ⍋ x
1 3 6 0 9 2 4 8 10 7 13 11 5 12 14