Hàm thứ bậc cao

Trong toán học và khoa học máy tính, hàm thứ bậc cao (tiếng Anh: higher-order function) là một hàm thỏa ít nhất một trong các điều kiện sau: lấy một hoặc nhiều hàm làm đối số (ví dụ tham số thủ tục), trả về kết quả là một hàm. Tất cả các hàm khác là hàm bậc nhất (first-order function). Trong toán học hàm thứ bậc cao cũng được gọi là toán tử (operator) hay hàm số (functional). Hàm thứ bậc cao không nên bị nhầm lẫn với "hàm tử" (functor) trong toán học, xem thêm Hàm tử (định hướng). Hàm map, được tìm thấy trong nhiều ngôn ngữ lập trình, là một ví dụ về hàm thứ bậc cao. Nó nhận đối số là một hàm f và một danh sách các phần tử, và kết quả trả về là một danh sách mới với hàm f được áp dụng trên từng phần tử của danh sách. First-class function Combinatory logic Function-level programming Functional programming Kappa calculus - a formalism for functions which excludes higher-order functions Strategy pattern Higher order messages