> Při běhu programu se jméno proměnné vždy nahradí adresou, na které je uložena
> hodnota proměnné
Ve skutečnosti se adresou nahradí jméno každého slova, nikoliv jen proměnné. Navíc to není adresa, na níž je hodnota uložena, ale adresa, na níž je, zjednodušeně řečeno, uloženo slovo, které tuto hodnotu obsahuje ve svém těle.
Ještě k minulému dílu:
> Uvnitř smyčky je možné používat speciální klíčové slovo i,
> pomocí kterého...
Ve Forthu žádná speciální klíčová slova nejsou, což je právě jedno z jeho základních paradigmat. Slovo i je navíc ukázkou jednoho z nejtriviálnějších slov jazyka, které může být implementováno např. takto:
Ad adresa: toto vsak plati pouze pro Forthy, ktere provadeji klasicke neprime provadeni, tj. program se ve skutecnosti sklada pouze z neprimych adres. Moderni Forthy (moderni ve smyslu casovem, ne nutne kvalitativnim :-) vetsinou primo provadi preklad a tak jedina slova, ke kterym je zapotrebi znat adresu, je prave promenna.
Ad smycky: nespravne jsem se vyjadril; v te vete jsem pouze chtel vyjadrit, ze se opravdu jedna o "specialni" slovo, nikoli o pouhe oznaceni indexu (na prvni pohled to tak vypada). To "klicove" samozrejme neplati, dekuji za upozorneni.
Máte pravdu, že spousta dnešních F. kompiluje přímo do strojového kódu, nicméně i tak se kromě primitiv, jejichž sémantika se zakompiluje pomocí několika málo instrukcí, musí často kompilovat i adresy slov, třeba za instrukcí CALL. Nešlo mi o to, že by tvrzení nebylo správné, ale o to, že to svádí k domněnce, že proměnná má jakoby nějaké zvláštní postavení oproti jiným slovům. Navíc, většina kompilátorů jakýchkoliv jazyků kompiluje adresu proměnné.
Abych jen nešťoural, Váš seriál se mi líbí a jsem rád, že se tu něco o tomto zajímavém jazyku objevilo:)