la difference
alors que j´explique sans m´emmeler les pinceaux
did you eat your meal
l´action est terminee depuis un bon moment, elle n´a plus aucun lien avec le present, il s´agit d´un moment precis dans le passe
have you eaten your meal
l´action est toujours liee au present, la personne en question peut tres bien en etre encore a son dessert, ou vouloir reprendre autre chose a manger
au cas ou elle aurait fini elle repondrait un truc genre
I´ve just finished
l´action se situe dans le passe, mais elle est recente, encore liee au present