For instance, take this piece of code:
var person = new Person();
or for you Pythonistas:
person = Person()
I
I use this pattern a lot in method signatures. If I'm unable to provide an alternate descriptive name then IMHO, there is nothing wrong with this.
What is wrong would be if you have two types Person and person then that is very very wrong.