
일급 객체(First-class object)는 프로그래밍 언어에서 일반적으로 다음과 같은 세 가지 조건을 만족하는 객체를 가리킵니다:
변수에 할당할 수 있어야 합니다.
함수의 매개변수로 전달할 수 있어야 합니다.
함수의 반환값으로 사용할 수 있어야 합니다.
다른 객체들에게 적용 가능한 모든 연산을 지원하며, 일급 객체의 예로는 함수가 있습니다. 일급 함수(First-class function)는 함수가 일급 객체로 취급되는 경우를 의미합니다. 함수를 변수에 할당하거나 함수의 매개변수로 전달하고, 함수를 반환값으로 사용할 수 있으면 해당 함수는 일급 함수입니다.
일급 객체의 개념은 함수형 프로그래밍이나 객체 지향 프로그래밍 등 다양한 프로그래밍 패러다임에서 중요한 역할을 합니다. 함수형 프로그래밍에서는 함수를 일급 객체로 취급하여 함수를 값처럼 다룰 수 있으므로, 함수를 조합하고 변형시켜 높은 수준의 추상화를 달성할 수 있습니다.