>>  <<  Ркв  Ввд  JfC  LJ  Фрз  Слв  Изм  Рзг  !:  Помощь  Словарь

Вызвать Себя $:  _ _ _  

$: обозначает самый длинный, содержащий его, глагол.                                                                                                    

Пример 1:
   1:`(] * $:@<:)@.* 5
120
В этом выражении, Сообразно (@.) выбирает глагол ] * $:@<: пока аргумент (уменьшаемый на единицу при каждом вызове) остается ненулевым. При нулевом аргументе, справа от @. получается ноль, и Сообразно выбирает постоянную функцию 1: .

Если опустить $:@ , вычисление будет выполнено только один раз:
   1:`(] * <:)@.* 5
20
Глагол Вызвать Себя приводит к тому, что вся функция выполняется снова после уменьшения аргумента на единицу.

Пример 2: В алгоритме быстрой сортировки (quicksort), из сортируемого списка случайно выбирается “центральный элемент”. Результат тогда есть отсортированный список элементов, меньших центрального; присоединенный к списку элементов, равных центральному; присоединенный к отсортированному списку элементов, больших центрального.

   quicksort=: (($:@(<#[) , (=#[) , $:@(>#[)) ({~ ?@#)) ^: (1<#)

   ] v=: 20 ?.@$ 13
10 3 3 6 11 11 4 0 10 2 5 6 2 0 1 3 12 10 11 5
   quicksort v
0 0 1 2 2 3 3 3 4 5 5 6 6 10 10 10 11 11 11 12


>>  <<  Ркв  Ввд  JfC  LJ  Фрз  Слв  Изм  Рзг  !:  Помощь  Словарь