Premiers pas avec eFORTH web

publication: 14 mars 2023 / mis à jour 15 mars 2023

Read this page in english

 


Premiers mots et premières définitions

Si vous n'avez pas installé eFORTH web, vous pouvez tester notre version en ligne.

Pour constater le bon fonctionnement de eFORTH, tapez words dans l'espace de travail eFORTH:

L'exécution de words affiche le contenu du vocabulaire FORTH. Tous ces mots sont l'équivalent de fonctions dans d'autres langages. FORTH se diférencie de tous les autres langages de programmation, car en FORTH toute nouvelle définition de mot FORTH agrandit le langage FORTH. Il n'y a pas de différence entre une application en FORTH et l'extension du dictionnaire.

Pour effacer le contenu de l'espace de travail, exécutez le mot page.

Voir les autres vocabulaires

words affiche le contenu du vocabulaire FORTH. Mais eFORTH web embarque d'autres vocabulaires. Pour voir la liste de ces vocabulaires, tapez internals voclist. Affiche:

--> internals voclist
tasks 
ansi 
web 
structures 
internalized 
internals 
FORTH 
 ok

Parmi ces vocabulaires, celui qui va nous intéresser est le vocabulaire web. Pour voir les définitions de ce vocabulaire, taper web vlist. Affiche:

yielding-task yielding import rm ls include-file upload upload-file web-key?  
web-key web-type scripts scripts# random button mouse textWidth fillText  
font text-size! log upload-success? upload-done? upload-start ms-ticks  
silence tone importScripts release keyCount getKey clearItems removeItem  
getItem setItem smooth gpop gpush rotate scale translate show-text keys-height  
mobile textRatios viewport@ window line fill stroke lineTo moveTo beginPath  
box lineWidth color! text gr grmode shouldEcho? web-terminate web-key?-raw  
web-key-raw web-type-raw jseval JSWORD: jsslot jseval!  

Les mots colorés ci-dessus sont documentés. Cliquez sur le mot qui vous intéresse pour accéder à la documentation de ce mot.

Un vocabulaire permet d'intégrer des mots utilisables dans un certain contexte. Ici, le contenu du vocabulaire web n'est défini que pour la version eFORTH web. Le vocabulaire web n'existe pas sur les autres versions de eFORTH (Windows, Linux, ESP32...).

Première compilation de code FORTH

Si une définition FORTH est courte, vous pouvez la compiler immédiatement depuis l'invite de commande de eFORTH web:

: myLoop 10 0 do i . loop ; 

Tapez ensuite myLoop, ce qui exécutera le code qui vient d'être compilé par eFORTH web:

uEforth v7.0.7.9 - rev fb3db70da6d111b1fdf0
Forth dictionary: 4068200 free + 76708 used = 4144908 total (98% free)
3 x Forth stacks: 16384 bytes each
 ok
--> : myLoop 10 0 do i . loop ;
 ok
--> myloop
0 1 2 3 4 5 6 7 8 9  ok
--> 

Sélection mode texte ou graphique

Le mot gr sélectionne le mode graphique. Ce mot rend visible un espace graphique de type canvas:

web gr 

Pour revenir au mote text, taper text.

Voici un exemple de graphisme:

web 
: grTest ( -- ) 
    gr 400 300 window 
    $000000 color! 
    5 295 395 295 line 
    5 295   5   5 line 
    $ff0000 color! 10 294 10  -30 box 
    $00ff00 color! 30 294 10  -80 box 
    $ffff00 color! 50 294 10 -120 box 
    $0000ff color! 70 294 10  -45 box 
    key drop 
    text  
  ; 

L'exécution de grTest affiche ce graphisme:

Bonne programmation.


Legal: site web personnel sans commerce / personal site without seling