We can use the future perfect to say of something that it will have been done by a certain time in the future. Does it make sense to use this tense to tell about something by an undefined time in the future? For instance:
I will have learnt English.
This means that I will have learnt English in the future. It is not defined when exactly I'll have learnt English. This sentence emphasizes a future achievement, not the learning process.
What exactly is the difference in that sentence from future prediction with simple future:
I will learn English.