Filter (функція вищого порядку)
У багатьох мовах програмування filter
— функція вищого порядку, обробляє структуру даних (зазвичай список) у певному порядку, щоб створити нову структуру даних, яка містить саме ті елементи початкової структури даних, для яких заданий предикат повертає значення true
.
У Haskell, приклад коду
filter even [1..10]
обчислює список 2, 4, …, 10 шляхом застосування предиката even
до кожного елемента списку цілих чисел 1, 2, …, 10 у такому порядку та створення нового списку цих елементів для якого предикат повертає логічне значення true, тим самим надаючи список, що містить лише парні члени цього списку. І навпаки, приклад коду
filter (not . even) [1..10]
обчислює список 1, 3, …, 9, збираючи ті елементи списку цілих чисел 1, 2, …, 10, для яких предикат even
повертає логічне значення false (з .
є оператор композиції функцій).
Це незавершена стаття про програмування. Ви можете допомогти проєкту, виправивши або дописавши її. |