Is it correct to say:

If you have finished it by then, I'll come and take it.

thus using the present perfect in the "if" clause to mean the future instead of the present?

4 Answers 4


It is indeed correct, and perhaps you're grasping this intuitively without needing a theoretical understanding.

Robusto's answer is helpful. If plus a present tense can be used to indicate a hypothetical future state, regardless of whether by then, or any other explicit indicator of time, is present:

If you bake me a cake tomorrow, I will dance a jig.

If you bake me biscuits, I will dance the foxtrot tomorrow.

If you bake me a torte, I will dance the rumba.

*If you bake me a pie tomorrow, I dance the polka.

*If you will bake me a quiche tomorrow, I will dance the watusi.

However, Robusto doesn't mention a subtlety about your question. The present perfect is a tense that describes completed action from the point of view of the present. When used in an if clause (where present indicates a hypothetical future state), it's referring to completed action from the point of view of the future.


If you have finished it by then, I'll come and take it.

*If you will have finished it by then, I'll come and take it

Have finished is describing completed action, but its inclusion in the if clause means the action is completed from the point of view of the future. You haven't begun your homework yet, but if you have finished it by tomorrow, I'll buy you ice cream.

  • 1
    Thanks to all of you. While reading your explanations, I realized that was exactly what I thought, though intuitively.
    – Kofa
    Jun 15, 2011 at 22:05
  • 1
    @Kofa The best thanks is to accept whichever answer you found the most helpful. :-)
    – Kit Z. Fox
    Jun 16, 2011 at 0:17

The "If ... by then" of the first clause establishes the future context, so any present-tense verb form will work to express a future condition:

If it works by then, let's use it.

If the road has been built by then, we'll drive on it.

If I've seen the movie by then, I'll tell you about it.

If it hasn't rained by then, we'll have to irrigate the crops.

If I'm sleeping by then, I won't care.


Will (or 'll) is being used there, Dominic, to make an observation about a past event which has current relevance and which is likely to be true. It’s a fairly common use of this modal verb. Here’s a similar example: ‘If they have been out all day, they’ll be hungry by now.’ The main clause here has ‘ll + infinitive, because the hunger is assumed to be current. The construction ‘ll + have + past participle occurs where the action described in the main clause is assumed to have taken place, as in ‘If they have been out all day, they’ll have eaten by now’, and as in your example.

(Welcome to EL&U, Dominic. As a general rule, it’s preferable to post a question like this separately, rather than as an answer to another question.)


I agree with the answer. For a twist on the 0 conditional with Present Perfect in the condion and simple present in the result, how about Fareed Zakaria's statement on October 6th's GPS, "If a genuine democratic process has been followed, we have to accept the results." Would you agree that this is the 0 conditional, even though it is not Present/Present? I appreciate all feedback. Liam Murphee

  • Without context I can't tell whether the actual time is past/present or [implied] future/future. Was Zakaria referring to an election that had already taken place or one upcoming? Jul 8, 2017 at 21:03
  • If this is your definition of zero conditional, it then depends on whether you mean 'if' in the sens of 'when' -- something that is a general rule -- or if it is meant on this specific occasion, in which case it is not zero conditional. What exactly it is then calls depends somewhat on the grammar book you are reading. In my experience that's another long painful discussion...
    – S Conroy
    May 12, 2019 at 12:53

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

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