Kearns (2011: 58-61) views the common noun dog to be of type <e, t>. This makes sense based upon the predicate use of such a noun, e.g. Those animals are dogs. What happens, though, when the noun is NOT used predicatively, but rather its used as an argument of the predicate, e.g. Dogs bark? The problem is perhaps more visible with a singular mass noun, e.g. ice cream:
(1) That is ice cream.
(2) Ice cream is good.
Viewing ice cream in (1) as being of type <e, t> seems appropriate because it functions predicatively there, this predicate taking an argument (i.e. That); the sentence can then be judged to be true or false based upon whether ‘that’ is or is not indeed ice cream in the discourse context. This sort of analysis is not possible for ice cream in (2), though, because ice cream there is the subject argument of the predicate is good. Given that the predicative adjective good is of type <e, t>, there is no way that the noun ice cream, if it is also of type <e, t>, could combine with is good. In other words, an expression of type <e, t> cannot combine with another expression of type <e, t>.
To overcome this difficulty, it seems that type theory of this sort should distinguish between the predicate vs. argument use of common nouns, viewing them as distinct types. A predicate noun can be viewed as type <e, t>, but an argument noun should be viewed as just type e. To the best of my knowledge, standard type theory does not do this, though. Interestingly, Kearns (2011: 58-61) views the common noun dog, when it functions as an argument, as an expression of type <e, t> as stated above, but she views the common noun ice cream, also functioning as an argument, as an expression of type e. There is hence an inconsistency in Kearns’ account that is silently assumed and that hence masks a problem concerning how common nouns are analyzed.
So my question is what I might be missing concerning basic type theory in the context of formal semantics. What have I overlooked?