SATAI: Aha, cekal jsem neco zaludnejsiho. Nicmene jakkoliv to asi nicemu nevadi takto to psat, mel bych namitky proti tomu, jak moc je to dulezite. foo == null clovek nejcasteji pouzije v podmince (dost vyjimecne kdekoliv jinde) a vzhledem k tomu, ze Java, pokud vim, nepretypovava implicitne null na false, tak ten kompilator zarve, pokud clovek to jedno rovnitko zapomene. Totez i v pripadech, ze tam misto null je cokoliv jineho, s vyjimkou true/false - tam sice ten problem nastava, ale zase if (foo == true) nebo if (foo == false) pise malokdo (nebo aspon ja urcite ne).
Pokud jde o C, tak v tom uz, pravda, dlouho nedelam. Ale jakkoliv tam prekladac takovyhle veci sezere, tak clovek, ktery si nechce zbytecne koledovat, si u prekladu zapina i warningy a kouka na ne a pouziti jednoho rovnitka v podmince warningy, pokud vim, vyvolava, takze zase by si toho clovek vsimnout mel.