human
quelle était la raison de scinder les programmes en interpréteurs et compilateurs ? Je sais comment fonctionnent l'interpréteur et le compilateur mais je ne comprends pas comment ils sont appliqués en production. Quels sont les problèmes qu'ils ont résolus ? Explique comme si j'avais cinq ans.
gpt
Les compilateurs sont arrivés en premier, ils ont pris votre code et l'ont traduit en code machine à l'avance afin qu'il puisse s'exécuter directement sur le processeur rapidement lorsque vous en avez besoin. La compilation est/était un processus raisonnablement lent et a été fait sur un équipement lent donc c'était bien de le faire à l'avance. Vous pouvez également optimiser le code pendant le processus, réorganiser certaines instructions pour une meilleure utilisation du matériel et, dans l'ensemble, simplement accélérer les choses Un langage interprété s'exécute sur un interpréteur, essentiellement un programme précompilé qui prend ce que vous avez écrit, compile et exécute chaque ligne dans l'ordre à l'aide d'appels de fonction précompilés. Il y a peu ou pas d' optimisation car le code est lu au moment de l' exécution , donc si vous accédez à votre tableau de manière non idéale , vous allez en payer le prix , mais un compilateur réorganiserait généralement les choses pour que vous finissiez par y accéder de manière idéale Un langage interprété va être plus lent , vous exécutez du code sur du code et vous manquez beaucoup d' optimisation , mais ne nécessite pas de précompilation à l' avance et de portage de l' exécutable sur le matériel cible