The choice of present perfect or past tense depends on the frame of reference (period or point in time) in which the event is conceived as occurring. If the frame of reference extends to the present time, the present perfect is used. For example:
I have written a letter this morning. (if it is still the morning)
He has produced ten plays. (if he is still alive and professionally active)
They have never traveled abroad. (if they are still alive and considered capable of traveling)
If the frame of reference is a time in the past, or a period that ended in the past, the past tense is used instead. For example:
I wrote a letter this morning (it is now afternoon);
He produced ten plays (he is now dead or his career is considered over, or a particular past time period is being referred to);
They never traveled abroad (similarly). [...] The simple past is generally used when the occurrence has a specific past time frame – either explicitly stated (
I wrote a book in 1995;
the water boiled a minute ago), or implied by the context (for example, in the narration of a sequence of events). It is therefore normally incorrect to write a sentence like *
I have written a novel yesterday; the present perfect cannot be used with an expression of past time such as
yesterday.
With already or yet, traditional usage calls for the present perfect:
Have you eaten yet? Yes, I've already eaten. However, current informal American speech tends to use the simple past:
Did you eat yet? Yes, I ate already.Use of the present perfect often draws attention to the present consequences of the past action or event, as opposed to its actual occurrence. The sentence
she has come probably means she is here now, while the simple past
she came does not. The sentence, “Have you been to the fair?” suggests that the fair is still going on, while the sentence, “Did you go to the fair?” could mean that the fair is over.