First-Class Functions
Ivor Horton, Peter Van Weert · Apress eBooks · 2018
The term does have a somewhat similar origin. In the 1960s, Christopher Strachey (the same computer language pioneer who first formalized the concepts of lvalues and rvalues, by the way) coined the term when he labeled procedures (functions) as second-class citizens in the programming language ALGOL: “They always have to appear in person and can never be represented by a variable or expression….”