💾 Archived View for gem.ortie.org › docs › 005_forth.gmi captured on 2023-03-20 at 17:47:00. Gemini links have been rewritten to link to archived content
⬅️ Previous capture (2023-01-29)
-=-=-=-=-=-=-
Forth est un langage de programmation étonnant, à la fois retro (datant des années 70) et présentant des caractéristiques qui lui permettent de rester d'actualité.
gforth ou pforth sont des versions libres de forth. Du fait de la profusion des implémentations de forth, et de la grande disparité dans la syntaxe, il peut être intéressant de choisir une version qui colle au plus près au standard ANS FORTH de 1994 (ANSI), ce que fait parfaitement pforth.
uf forth est intéressant parce qu'il utilise comme base la machine virtuelle varvara (uxn), et c'est un des rares forth moderne permettant d'afficher directement des pixels.
UF Forth (basé sur UXN et Varvara)
UF Forth (version de dev sur gitlab)
pforth, Portable ANS Forth in 'C'
Portable Forth Environment (n'est plus mis à jour depuis des années, mais suit le standard ANS)
Forth Interpreter+Compiler for WebAssembly (ANS)
Présentation de Forth pour Arduino (notamment FlashForth)
." Ceci est du texte"
s" Ceci est du texte"
: chaine s" Un petit texte" ;
chaine type
: ls s" ls -alh" system ;
ensuite "ls" listera les fichiers du répertoire courant...
: to-string ( n -- addr c ) s>d <# #s #> ;
: SIMPLELOOP CR 0 BEGIN DUP 11 < WHILE DUP 5 * . CR 1+ REPEAT ;
ce qui fera la même chose que :
: SIMPLELOOP CR 11 0 DO 5 I * . CR LOOP ;
informatique/forth/carre.fs.txt
forth in 15 minutes ("Learn X in Y minutes")
"Starting FORTH", an essential beginner guide by Leo Brodie (en anglais)
D'autres livres, parfois obsolètes. "The complete forth" par Alan Winfield est intéressant.
Simple forth, cours en anglais
Learn 4tH the easy way (en anglais)
Rosettacode Forth section (programming examples and samples)
ACME cross assembler compiler (C64)
Tavern, un système de fictions interactives, avec une syntaxe proche de Forth
Why forth? (+ miniforth in Lua)
"Forgotten languages from my past"