Ciao!
Volevo sapere se il compilatore ed il codice sorgente messi a disposizione da pitagora, funzionano, e sarei interessato se lui mi spiegasse come funziona (o qualunque altro).
Funziona così:
ammettiamo che questo sia un semplice sources di Suck
start "hello_word.suck"
p "hello_word"
end "hello_world.suck"
- Prende in input la prima riga dal file in questo caso: start "hello_word.suck"
- Divide la stringa in token: ad un vettore contenente solo istruzioni inserisco start all'altro inserisco "hello_word.suck
- così via finché non raggiungo EOF del file
Una volta divisi in token le varie righe, bisogna confrontare con un semplice if
if (!strcmp(istruzioni[0], "start") {
....... }
Capito?
Comunque i codici sorgenti vengono rilasciati così gli altri utenti possono studiare il programma.
Ma il codice in suck dove si mette? Come si compila?
Il codice Suck di scrive in un normalissimo file con estensione .suck es lol.suck
Una volta compilato il "compilatore" con nome Suck da riga di comando fai:
Suck lol.suck nome_file.c nome_file
Fatto questo compilare il file, in questo caso: nome_file.c nuovamente e magicamente avrai il programma. Se usi Linux invece dovrai fare
./Suck lol.suck nome_file.c nome_file
make compila
./nomefile