Take the 2-minute tour ×
English Language & Usage Stack Exchange is a question and answer site for linguists, etymologists, and serious English language enthusiasts. It's 100% free, no registration required.

Let's say I have just listened to a beautiful song wanted to immediately tell my friend about it. Which sentence should I use?

A. I haven't heard a song this good for a while.

B. I hadn't heard a song this good for a while.

Should I say A because I am currently still excited about the song? Or should I say B because the act of listening to the song started and ended in the past?

share|improve this question
The difference is especially important if you have not been physically active for a while and if you have had problems that have impeded you to hear song; but I'm more comfortable with the (B) case. –  user19148 Oct 6 '12 at 8:11
If you have just heard the song, then it is not so much past as 'pre-present' ('Is Igor here?" ~ "No, he has just left") so you should go with (A). –  Roaring Fish Oct 6 '12 at 9:24

3 Answers 3

up vote 4 down vote accepted

One of the uses of the present perfect is to talk about very recent events. Since you want to tell your friend about the song immediately, the present perfect is the right choice. You would normally use the past perfect to describe hearing the song at some time considerably before the time of speaking.

share|improve this answer
Not certain about 'considerably before'; I think it's any time specifically in the past. For example, there's nothing wrong with "Five minutes ago I heard a song I hadn't heard before." But nitpicking aside, +1. –  TimLymington Oct 6 '12 at 11:56
@TimLymington: You're right. It's a matter of the time relation between the two verbs, but none of us can write an entire grammar book in a simple answer here. Space and other constraints inevitably mean withholding part, often a large part, of the truth. –  Barrie England Oct 6 '12 at 12:16

It seems to me that there are three choices here.

I haven't heard a song this good for a while.
I hadn't heard a song this good for a while.
I hadn't heard a song that good for a while.

For the first two, this good places the song in the present or immediate past. Both verbs work: haven't works because it's referencing the time before you heard the current song, and hadn't works because it's referencing the last time you heard a song as good as this one.

If you didn't hear the song you're talking about recently, you need to say that good, and the only verb that works in this case is hadn't.

share|improve this answer

I am going to disagree with @Carlo_R. The second option is appropriate if you are describing a past event and you want to place the act of listening to the song quite specifically in that context. In the situation you describe, the first form is more appropriate. For one thing, if the first thing you do is tell your friend, you haven't heard a song as good in the interim. To use the second form would imply that you had (not least because it is over-formal usage for an impromptu conversation with a friend).

share|improve this answer

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.