Juste pout être sur d'avoir bien compris la différence entre un compilo et un interpréteur, corrigez moi si je me trompe.
Pour le compilo :
~~~~~~~~~~
Source ---> ByteCode/SDD dédiée ---> code natif
le tout en une seule passe (compilation + edition de lien)
Un interpréteur :
~~~~~~~~~~
Le source est lu et transformé à la volée en Bytecode puis en code natif pour être executé.
Donc l'unique différence entre un interpréteur et un compilateur est le moment où est fait la "traduction" (cad à l'execution ou avant pdt la compilation)
Le gros intéret des interpréteurs est donc de pouvoir réaliser des environnements interactifs. D'où le raccourcit interpréteur = environnement interactif. Cela n'empeche pas de pouvoir se passer de cet environnement et de crééer un executable ki s'interpretera ou qui sera compilé (ex : ocaml)
L'inconvenient est de limiter le nombre d'optimisations puisque l'interpreteur n'a qu'une vision locale du code, celle du bloc d'instructions en bytecode en cours de traduction.
Quand a un environnement interactif effectuant de la compilation à la volée j'appele ça bash + gcc.
[^] # Re: UnderC : un interpréteur c++
Posté par Anonyme . En réponse à la dépêche UnderC : un interpréteur c++. Évalué à 2.
Pour le compilo :
~~~~~~~~~~
Source ---> ByteCode/SDD dédiée ---> code natif
le tout en une seule passe (compilation + edition de lien)
Un interpréteur :
~~~~~~~~~~
Le source est lu et transformé à la volée en Bytecode puis en code natif pour être executé.
Donc l'unique différence entre un interpréteur et un compilateur est le moment où est fait la "traduction" (cad à l'execution ou avant pdt la compilation)
Le gros intéret des interpréteurs est donc de pouvoir réaliser des environnements interactifs. D'où le raccourcit interpréteur = environnement interactif. Cela n'empeche pas de pouvoir se passer de cet environnement et de crééer un executable ki s'interpretera ou qui sera compilé (ex : ocaml)
L'inconvenient est de limiter le nombre d'optimisations puisque l'interpreteur n'a qu'une vision locale du code, celle du bloc d'instructions en bytecode en cours de traduction.
Quand a un environnement interactif effectuant de la compilation à la volée j'appele ça bash + gcc.
Désolé pour les fôtes, Bonne nuit ;-)