Oppure

Loading
23/07/11 18:25
luigi7
Salve,

Ho questo manuale:
hoepli.it/libro/manuale-di-c/…

Mi dite cosa devo fare per creare un interprete molto semplice.

ho letto la gestione dei file come leggerli e scriverli,
però non so come fare il lettore delle parole chiavi...

ad esempio:

SETMOVE 30,0
SETMOVE 0,30


e si muove la tartaruga nella pianta cartesiana x y .

mi date informazioni come fare?

Ha scordavo per caso devo usare una libreria grafica?

Potrei usare le SDL.

grazie mille.
aaa
23/07/11 18:36
arack95
Mi dite cosa devo fare per creare un interprete molto semplice.

Dipende da come dev'essere il tuo interprete, se tutte le istruzioni sono come quelle due righe sotto e a paradigma imperativo allora puoi facilmente implementare un algoritmo che ti splitta le stringhe e le gestisce.

Ha scordavo per caso devo usare una libreria grafica?

Questo sta a te deciderlo.

Potrei usare le SDL.

Si potresti.
Ultima modifica effettuata da arack95 23/07/11 18:39
aaa
23/07/11 18:42
luigi7
ok, grazie per l'informazione...
ora mi invento un po di chiavi per gestire meglio la tartaruga ...

ad esempio

TARTARUGA 1
SPEED 10
SETMOVE 30
SETMOVE 20
LEFT
RIGHT
SPEED 5
SETMOVE -30
SLEEP 5

etc..

e ora mi studio la SDL visto che qui c'è una guida...

hai altre guide per la SDL ?

e poi mi dici dove posso trovare esempi di lettura script?

grazie mille.
Ultima modifica effettuata da luigi7 23/07/11 18:43
aaa
23/07/11 19:01
arack95
e ora mi studio la SDL visto che qui c'è una guida...

Non è che sia eccezionale quella sul foro(senza offesa)..

hai altre guide per la SDL ?

Prova a vedere se ti piace questa:
lazyfoo.net/SDL_tutorials/…

e poi mi dici dove posso trovare esempi di lettura script?

Non ne ho idea, comunque per quello che devi fare tu io pensavo che tu potessi prima creare un array di stringhe splittando ogni riga e poi controllare la prima sottostringa tra i tuoi comandi, quindi se esiste controlli il numero di parametri successivi e poi gestisci il codice, altrimenti ritorni errore dicendo che non esiste il comando.
aaa
23/07/11 19:11
luigi7
capito, ora studio come fare..

e poi mi rifarò vivo.

Ti ringrazio per il suggerimento.

grazie mille.
aaa
23/07/11 19:37
pierotofy
Prima di cominciare qualsiasi cosa devi prima stabilire quali saranno le parole chiavi del tuo interprete. In base alla difficoltà del linguaggio che definirai, ci saranno approcci diversi che puoi usare.

Se mantieni il linguaggio semplice (ad esempio ammettere una parola chiave seguita da uno o più valori per riga), come quello che hai scritto qui sopra allora puoi semplicemente fare uno semplice split per ogni riga, convertire i valori e muovere la tartaruga di conseguenza.

Se il linguaggio è più complesso (ad esempio definire espressioni? SETMOVE (3 + 5 / 2 - GETSPEED)) dovrai cominciare a studiare diversi argomenti nel ramo dei compilatori. Probabilmente troppo complicato se sei agli inizi.
Il mio blog: piero.dev
23/07/11 19:58
luigi7
Postato originariamente da pierotofy:

Prima di cominciare qualsiasi cosa devi prima stabilire quali saranno le parole chiavi del tuo interprete. In base alla difficoltà del linguaggio che definirai, ci saranno approcci diversi che puoi usare.

Se mantieni il linguaggio semplice (ad esempio ammettere una parola chiave seguita da uno o più valori per riga), come quello che hai scritto qui sopra allora puoi semplicemente fare uno semplice split per ogni riga, convertire i valori e muovere la tartaruga di conseguenza.

Se il linguaggio è più complesso (ad esempio definire espressioni? SETMOVE (3 + 5 / 2 - GETSPEED)) dovrai cominciare a studiare diversi argomenti nel ramo dei compilatori. Probabilmente troppo complicato se sei agli inizi.


si giusto ora lo faccio semplice con un commando + valore .. più avanti lo farò come dici tu... ma sono agli inizi ...

Mi dici cosa devo studiare oltre alla gestione dei file.


ora ho scaricato la guida SDL sul sito che mi avete postato solo che con il wget mi ha salvato i file .php e le immagini per non so il motivo.

Mi dici se c'è una guida in pdf per leggerla senza quando non sono su internet.

grazie mille per la spiegazione.

buona serata.
ciao.
aaa