It is better to call it past participle
rather than present perfect since the verb by itself is called a participle
(despite the fact that the present form of "have" is used).
Past participles are used to speak of events that happen in the past without stating how far back in time that they happened. For example, if I say to you:
(a) "You have worn diapers."
I am not suggesting you are wearing Depends now, I'm referring to your infancy without mentioning the time.
(b) "You wore diapers 20 years ago." (Or insert your correct age.)
Simple past is used when speaking of specific events and stating the time elapsed.
(c) "You haven't worn diapers since you were 2."
The past participle is used here because although a time is mentioned, it is not an interval
henryh wrote:1. I'm in the process of driving a car and I want to tell my friend sitting next to me that this happens with me for the first time:
a.) This is the first time I've driven a car.
This sentence could be rewritten as, "I have never driven a car before," which shows that your entire lifetime is the interval into the past. Your above sentence is correct, but because it uses a positive verb to speak of events that never happened in the past, it can be obscure. Use a negative verb or adverb if it has never happened (see what I mean?).
henryh wrote:b.) This is the first time I'm driving a car.
c.) I'm driving a car for the first time.
would be the better wording.
One place you will hear mistakes of participles being made constantly is by sports announcers. (But how many ex-athletes are all that educated?) You will constantly hear them say, "He won his first game of the season," even though it could be the player's tenth game. Such a sentence would be better worded as, "He has gotten his first win of the season," using win as the object noun rather than the verb form of it.
henryh wrote:2. Which one would a native speaker prefer?
a.) How long haven't you seen your friend?
b.) How long has it been since you saw your friend?
c.) How long is it since you saw your friend?
The example (a) is grammatically wrong. Avoid it.
And native speakers prefer what they're used to hearing. If someone says it like a
, they'll like you do say that.
henryh wrote:Finally, I often here people say:
How long has it been since you've seen your friend?
Is it grammatically correct to put Present Perfect after 'since'?
The past participle speaks of a remote time in the past, but even that can be subjective. Whether one uses simple past or past participle is dependent on other factors. Use this as a guideline:
1. If the past event is easily done but not done in a reasonable amount of time in the past, use the past participle (eg. "You have not seen your next door neighbor in six months").
2. If the past event is difficult to do despite your desire to do it, then use the simple past (eg. "You didn't see your friend for six months after he went to Antarctica").