What's the difference between using (1) a present perfect in the if part of a simple conditional, and (2) using just a regular present tense without a perfect there?
I will call you if I have done my homework.
I will call you if I do my homework.
What's the difference between using (1) a present perfect in the if part of a simple conditional, and (2) using just a regular present tense without a perfect there?
I will call you if I have done my homework.
I will call you if I do my homework.
"If I have done" means that the homework is finished.
"If I do" means that the homework has been started, but not necessarily completed.
I'd like to join you guys tonight, but I've got a lot of homework to finish first, so I might not make it there.
I will call you if I have done my homework, to let you know I'll be there.
I've got a lot of homework for this weekend.
Rather than hanging out with you, I might work on it tonight to get most of it out of the way, so I'll have more time for you tomorrow.
I will call you if I do my homework, to let you know I won't be there.
The first sentence is not very natural.
It depends on what you are trying to say. If you are trying to say that you might or might not do your homework, then you could say:
"If I do my homework I will call you afterwards".
If you definitely intend to do your homework:
"I will call you when I have done my homework"
In your first construction the tenses don't really work together as it stands. Although you could say:
"I will call you if I have done my homework by 9".