EMZETT.
Увійти

Чиста функція (pure function)

Коротко: Чиста функція за однакових аргументів завжди повертає однаковий результат і не має побічних ефектів: не змінює ні глобальні змінні, ні вхідні дані, нічого не пише у файли й нічого не виводить.

Докладніше: Чисті функції легко розуміти, тестувати та розпаралелювати, бо результат залежить лише від аргументів. Результати можна кешувати (мемоїзація), а компілятор може переставляти чи оптимізувати їх. Вони — основа функціонального програмування.

Подробиці

# чиста
def vat(net):
    return net *

Див. також: незмінність, функція вищого порядку, мемоїзація, модульний тест