J'ai beaucoup aimé ce language. Bon, ok, il a des côtés arides (pas de protection mémoire... ni vérification de type, pire que le C, notation polonaise inverse). Mais contrairement au BASIC de l'époque, tu pouvais créer tes propres "mots" (on évite les GOSUB 1000 peu mémotechniques). Il y a un astucieux mélange interprété/compilé qui produit du code rapide (ou plutôt une liste de routine assembleur à appeler...
https://en.wikipedia.org/wiki/Threaded_code). Ce mélange permet typiquement de créer des instructions qui génèrent du code... et les mots de contrôle de flux (IF THEN, LOOP...) sont eux mêmes écrits en FORTH. Comme tu crées tes mots, il n'y a pas de commande RUN comme en BASIC. Tapes simplement dans l'interpréteur un des mots que tu souhaites exécuter, et c'est exécuté. Même si j'ai beaucoup apprécié ce langage (qui a décuplé la puissance de mon PC sous BASIC interprété), il n'a pas rivalisé avec le Turbo Pascal à l'époque. Mais je reconnais le côté ingénieux et optimisé pour des environnements contraints (il y a aussi des microprocesseurs optimisés pour FORTH).
Partager