first class objectってのは、無名で扱える、関数の引数に渡せる、関数の返却値として返せる、を満たすものだよ
C言語の関数は必ず関数名を与えないといけないからfirst class objectではない

学部レベルの講義で独自理論なんか扱うわけない。>>338 で引用した説明が通説になっている
それを迂闊にも否定した >>339 は反省しろってことだな