Kdb + имеет существительные, глаголы и наречия. Все объекты данных и функции являются существительными . Глаголы улучшают читаемость, уменьшая количество квадратных скобок и скобок в выражениях. Наречия изменяют двоичные (2 аргумента) функции и глаголы для создания новых связанных глаголов. Функции, производимые наречиями, называются производными функциями или производными глаголами .
каждый
Каждое наречие, обозначаемое (`), изменяет двоичные функции и глаголы для применения к элементам списков вместо самих списков. Взгляните на следующий пример —
q)1, (2 3 5) / Join 1 2 3 5 q)1, '( 2 3 4) / Join each 1 2 1 3 1 4
Существует форма Each для монадических функций, которая использует ключевое слово «each». Например,
q)reverse ( 1 2 3; "abc") /Reverse a b c 1 2 3 q)each [reverse] (1 2 3; "abc") /Reverse-Each 3 2 1 c b a q)'[reverse] ( 1 2 3; "abc") 3 2 1 c b a
Каждый-левый и каждый-правый
Существует два варианта каждой из них для двоичных функций, которые называются Every-Left (\ 🙂 и Each-Right (/ :). В следующем примере объясняется, как их использовать.