Wiktionary
first-class object
n. 1 (context programming languages English) An entity that can be constructed at run-time, passed as a parameter, returned from a subroutine, or assigned into a variable. 2 (context programming languages English) An entity that can pass a value as a parameter, can be returned from a subroutine, and can be assigned into a variable. (gloss: This is the definition according to http://en.wikipedia.org/wiki/Raphael%20Finkel, who uses the terms of second- and third-class objects.)