Возможно, история программирования языков повернулась бы чуть иначе, если бы развитие пошло с упором на интерпретатор APL’а, но об этом остаётся только фантазировать, так что предлагаю посмотреть на то как писали программы в далёком 1975м. По-моему, выглядит более элегантно, чем в можно увидеть в большинстве даже сейчас:
× — multiple
÷ — divide
/ — это foldr1
¯123 — отрицательное число
← — define
⍳ — генератор индекса или поиск по индексу
↑ — take
↓ — drop
∧ — and
∨ — or
⌈ — max
⍴ — shape, reshape, мерность
. — inner product, т.е. комбинирует 0 измерение одного аргумента и самое большое измерение другого, в случае матрицы — это получается строки одного со столбцами другого. V f.g W -> (V1 g W1) f (Vn g Wn)
∘. — outer product, т.е. результат комбинации для каждого аргумента
Y[N] — получить N’й элемент, можно указать N для разных уровней через;
ссылка на оригинал статьи http://habrahabr.ru/post/200084/
Добавить комментарий