Alors, voyons si j'ai bien compris ou non.
-
Quand on dit que la différence entre un compilateur et un interpréteur est qu'un interpréteur traduit les instructions de haut niveau en une forme intermédiaire qu'il exécute ensuite. [Je pense que le compilateur traduit également les instructions de haut niveau en une forme intermédiaire, mais à ce stade, il génère le code objet au lieu de l'exécuter, n'est-ce pas ?]
-
Un interprète lit le code source une instruction ou une ligne à la fois, convertit cette ligne en code machine et l'exécute. [L'interpréteur lui-même ne convertit pas le code en code machine, il évalue l'instruction (après qu'elle ait été analysée) en utilisant ses propres fonctions précompilées. Par exemple, l'expression Add dans le langage de haut niveau sera évaluée en utilisant la fonction add de l'interpréteur qui a été préalablement compilée, n'est-ce pas ?]