
This sentence in present tense is fine, since "yesterday" is part of a gerund phrase.Īs far as I know, native English speakers do not use present perfect as a replacement for past tense. "Having done my homework yesterday makes it possible for me to play happily all day today." I do have to admit that these examples are not the best of prose, but what you heard may have been something similar.Īnother possibility is that you heard something like: I have done my homework even yesterday, with time to spare." " All year I have done my homework, and yesterday is no exception. "I can play happily all day today because I have done my homework yesterday." It might also be excusable to put "yesterday" after "done my homework", where it might be part of the participle phrase and leave the "I have" available to another adverb of time: In one person's world, I am infinitely lazy and my teachers wait until next August and I still haven't done my homework but in another person's world, friends come and go and parties are held and come to their natural conclusions, but I am diligent and study all weekend, and then yesterday I have done my homework." "People sometimes seem to live in different worlds. We do have something called "historical present" in which present tense is used for any time whatever, so I suppose we could say, for example: Generally speaking, "I did my homework" is about an event in the past, but "I have done my homework" is about a situation in the present. It would be nice if we knew the exact sentence you heard, and the context for it, so we could give you clear, appropriate interpretations, including the possibility that this "Home English" may not jibe with native speech.
