Pourquoi Forth ?
Le langage Forth sera utilisé à plusieurs endroits de ce cours. Ses caractéristiques les plus intéressantes seront pour nous :
- Modèle d’interaction, interprétation et compilation original
- Absence de grammaire
- Piles multiples
- Récursion terminale facile à implémenter
- Machines virtuelles
Avertissements
- Ce cours n’est pas un cours de langage Forth
- Certains raccourcis seront efféctués
- On ne vous demandera pas de construire votre propre système Forth (bien que cela soit facile, amusant et enrichissant)
Le système Forth
- Mélange un interpréteur et un compilateur
- Chaque nouveau mot (équivalent d’une fonction en Forth) est compilé immédiatement et devient instantanément disponible
- Les mots sont séparés par un blanc ou un retour à la ligne
- Un dictionnaire contient l’adresse du code de chaque mot
- Une pile de données sert à passer les paramètres entre les mots
Modes
Forth dispose de deux modes. Le c÷ur lit un mot, puis agit.
- Interprétation : c’est le mode par défaut ; tout mot qui est tapé est exécuté, tout nombre est placé sur la pile
- Compilation : chaque mot ajoute un appel à ce mot dans la compilation courante, chaque nombre génère le code nécessaire pour placer ce nombre sur la pile
…
Cours Forth (272 Ko) (Cours PDF)