Předmět Autor Datum
A není to spíš věc prostředí, ve kterém program píšeš než věc vlastního programovacího jazyka?
Jan Fiala 12.07.2019 07:44
Jan Fiala
Tak je to interaktivní jazyk takže píšu jednotlivé příkazy a rovnou je můžu spouštět (viz příklad do…
Henonee 12.07.2019 15:54
Henonee
To pises na webu v prohlizeci nebo kam? To, jestli se jazyk interpretuje okamzite zalezi na programo…
Jan Fiala 12.07.2019 16:41
Jan Fiala
Spustím xterm, ten má jako shell bash, takže se mi ukáže prompt bashe. Napíšu gforth a enter, tím se…
Henonee 12.07.2019 20:43
Henonee
Forth neznám, ale podle dokumentace by to mohlo být tohle: http://gforth.org/manual/gforthmi.html#gf…
Wikan 12.07.2019 16:52
Wikan
Díky, vyzkouším to, ale obávám se, že tím dostanu až něco "přeloženého" a ne zdrojový text - no uvid…
Henonee 12.07.2019 20:44
Henonee
Asi bude nejlepsi se podivat do manualu pouzivaneho FORTHu. Klasicky FORTH nezna vubec soubory a nep…
kubik 13.07.2019 02:53
kubik
ten manuál, co jsem našel obsahuje mraky slov a jejich hlavičky, ale nějak už tam moc není, jak to s… poslední
Henonee 14.07.2019 01:32
Henonee
Hádam by to aj šlo: https://stackoverflow.com/questions/48859741/forth-writing-to-a-forth-disk https…
čitateľ 13.07.2019 08:39
čitateľ
Jo, díky. To vypadá sice kostrbatě, ale použitelně. (Ono se všude píše, jak je Forth interaktivní, a…
Henonee 14.07.2019 01:23
Henonee

Spustím xterm, ten má jako shell bash, takže se mi ukáže prompt bashe.
Napíšu gforth a enter, tím se spustí gforth a čeká na příkazy stejně jako předtím bash. (čili programovací prostředí je gforth, stejně jako těsně předtím to byl bash)

Napíšu nějaká slova a po stisknutí entru se provedou (třeba napíšu číslo a enter, tak se vloží na zásobník, nebo nějakou operaci jako sčítání, násobení ... tak ze zásobníku načte argumenty a výsledek vrátí na zásobník, nebo nějaké jiné slovo, například tečku a ta mi sebere a vypíše vrchní hodnotu ze zásobníku)

Napíšu slovo dvojtečka, pak název nového slova pak slova, ze kterých se má skládat, pak středník a mám nadefinované (naprogramované) nové slovo.

Samozřejmě bych mohl pustit gforth se jménem souboru a on by pak ten soubor načetl při startu a provedl, ale pořád to neřeší interaktivní práci/ladění a následné uložení

Problém je, jak tato nová slova nějak rozumně uložit do souboru, abych je příště nemusel psát znovu, ale jenom načetl ten soubor a tím se provedly. (a mezitím bych je mohl učesat nějakým textovým editorem, okomentovat a tak).

---

Samozřejmě bych mohl psát předem všechno do souboru, pak to jen v gforth načíst a zkusit, kde jsou chyby, vyskočit, opravit to v tom souboru, znova spustit gforth, znova načíst a zkusit, kde jsou chyby atd atd, ale doufám, že existuje nějaký elegantnější způsob. V basicu to bylo LOAD a SAVE, v bashi například

alias>nove_aliasy.sh

nebo

set>nove_funkce.sh

(a pak odmazat proměnné v editoru).

V gforth nevím jak.

ten manuál, co jsem našel obsahuje mraky slov a jejich hlavičky, ale nějak už tam moc není, jak to skloubit dohromady.

A tutoriály bohužel jsou (aspoň co jsem našel) ve stylu napište tohle (bezchybný příklad) a udělá to tohle (nějaký výsledek), vidíte a už umíte vytvářet vlastní slova! Ale už tam není to "a pak to uložte takhle a takhle opravujte chyby".

Nebo jsou o nějakých věcech natolik složitých, že tomu zatím nerozumím, a tak nějak se předpokládá, že když už člověk řeší tohle, tak základy prostě umí a netřeba je zmiňovat.

Takže mi zatím nezbývá, než se nějak svépomocí probít tou mezerou mezi těmito dvěma úrovněmi.

(Ale jak našel níž čítateľ, tak nějaká cesta je a mám zase chvíli co zkoumat)

Jo, díky. To vypadá sice kostrbatě, ale použitelně. (Ono se všude píše, jak je Forth interaktivní, ale kdyby výsledek nešel nějak uložit (teda aspoň na systémech, kde ukládat jde), tak by to bylo dost na houby)

Když navíc na začátku dám něco jako


vocabulary TEMP
TEMP definitions

tak se mi všechna nová slova uloží do slovníku a půjdou vytáhnout přez WORDS a zobrazit přez SEE a protože ten editor je taky ve forthu, tak zkusím dát dohromady nějaké slovo, co vytáhne všechna nová slova a do toho editoru je našťouchá.

No a jak to jednou bude venku v texťáku, tak už si to můžu upravit jak chci. Případně dotahat z historie komenty a celé to pak uložit jako normální *.fs skript, který snadno načtu (to ten blok taky, ale ten se blbě edituje/udržuje)

Zpět do poradny Odpovědět na původní otázku Nahoru