Learn English – Is it correct to say ‘I have been waiting for you for an hour, and I am leaving now’

perfect-constructions

I am pretty sure this statement is wrong, and I'd better use 'have waited for you for an hour', that is I got annoyed and now I am determined to leave.
But, please dispel my doubts whether this may be true in any other context.
I am just asking because in our mother toungue we can express the idea both ways. Though 'have waited' is most likely, is it yet possible to say the above if a speaker means he is about the point of getting annoyed and to leave?

Best Answer

When writing something that will be read by someone in the future,
you have two choices for referring to Now:

  1. Now is the time when you are writing the message (speaker's present)
  2. Now is the time when the message will be read (reader's present)

If you use the present perfect for your waiting, followed by the present progressive for your leaving, as in the example sentence, then you're taking the first option. (Progressive can be used, or not, in the first clause.)

  • I've waited/been waiting for you for an hour and I'm leaving.

If you use the past tense in both cases, you're taking the second option:

  • I waited for you for an hour and (then) (I) left.

Either option is correct. In speech, speaker and hearer experience the same Now, but this is not the case with written communication.