Interpréteur
Exécute le code ligne par ligne à l'exécution.
An interpreter executes code directly, translating and running one statement at a time without creating a standalone executable. This enables interactive development and immediate feedback.
Characteristics:
- No compilation step: Execute immediately
- Line-by-line execution: Process as you go
- Runtime translation: Slower than compiled code
- Platform independence: Same source runs anywhere with interpreter
graph LR
Center["Interpréteur"]:::main
Rel_compiler["compiler"]:::related -.-> Center
click Rel_compiler "/terms/compiler"
classDef main fill:#7c3aed,stroke:#8b5cf6,stroke-width:2px,color:white,font-weight:bold,rx:5,ry:5;
classDef pre fill:#0f172a,stroke:#3b82f6,color:#94a3b8,rx:5,ry:5;
classDef child fill:#0f172a,stroke:#10b981,color:#94a3b8,rx:5,ry:5;
classDef related fill:#0f172a,stroke:#8b5cf6,stroke-dasharray: 5 5,color:#94a3b8,rx:5,ry:5;
linkStyle default stroke:#4b5563,stroke-width:2px;
🧒 Explique-moi comme si j'avais 5 ans
Un interpréteur est comme un traducteur qui lit une phrase en langue étrangère, te dit ce qu'elle signifie, puis passe à la phrase suivante. C'est plus lent que lire un livre entièrement traduit, mais tu peux comprendre immédiatement !
🤓 Expert Deep Dive
Les interpréteurs de parcours d'arbre exécutent directement les nœuds AST. Les interpréteurs de bytecode compilent en forme intermédiaire. Les JIT de traçage optimisent les chemins chauds.