Lately my coworker has been on something of a jihad against line counts. When I check in a new file, I'll generally leave all the referenced namespaces that Visual Studio includes, by default (System, System.Collections.Generic, and System.Linq being the majors that I almost always rely on). Several days later, my coworker will be reviewing diffs, see that maybe I haven't actually used any functions from the .Linq namespace, and he'll clip it. When I come back to the file some days later and want to add some functionality that depends on, say, .Select, my blood pressure shoots up when I see that the namespace is gone and I have to add it back.
My question is: aside from the marginal reduction in the project's line count, or the size of the source files, is there any real gain in clipping these unused namespaces? Is the .NET compiler so poor at analysis that unused namespaces induce a penalty in the outputted assemblies? If he's right in pursuing this madness, I'll accept it as a lesson learned... I just can't imagine that there's any sane reason for this. It seems like nothing but boneheaded craziness to me.