-
@altgScritto daNon Autenticatoil 2012-04-13 19:15:58.0 alle 2012-04-13 19:15:58.0insomma te hai scritto un linguaggio di programmazione vero? quindi ti sei pure fatto un compilatore dedicato.. bestia che lavoraccio

posso chiederti da dove sei partito per il compilatore e in che lingua l'hai scritto?
come ostia gli hai implementato quella roba magica che succede quando gli dai in pasto un sorgente e lui ti caga fuori l'eseguibile
la ringrazio per un'eventuale risposta
--un ANOnimo fan
-
Re: @altgScritto daaltgutente che non utieneil 2012-04-13 19:31:42.0 alle 2012-04-13 19:31:42.0Trollate totali: 11540> insomma te hai scritto un linguaggio di programmazione vero? quindi ti sei pure fatto un compilatore dedicato.. bestia che lavoraccio

Infatti non capisco perche` mi ci impelago.
> posso chiederti da dove sei partito per il compilatore e in che lingua l'hai scritto?
Originariamente, in C. Poi l'ho tradotto in Linoleum stesso, cosi` che il compilatore potesse compilare se` stesso e, come libreria, potesse essere inserito in progetti piu` articolati (editor di testi, IDE, ecc) che avrebbero quindi ereditato la capacita` di compilare sorgenti.
> come ostia gli hai implementato quella roba magica che succede quando gli dai in pasto un sorgente e lui ti caga fuori l'eseguibile
E` molto lunga a spiegarsi. In prima linea c'e` il parser, che legge il sorgente e cataloga istruzioni e operandi, smistandole a seconda del contesto verso sottoprogrammi che le interpretano e che, a loro volta, operano modifiche alla tabella dei simboli (dove vengono registrate soprattutto costanti numeriche, label di codice, informazioni sulle relazioni tra una label e i suoi argomenti), oppure accodano valori alla cache dei dati o del codice. Il tutto avviene in un numero di passaggi sufficiente a risolvere qualsiasi riferimento a simboli dichiarati successivamente ai loro stessi riferimenti (eccetto nel caso in cui i simboli siano interdipendenti, nel qual caso si ha un anello causale, es. dichiarazione di costante x=y seguito da y=x). Alla fine, dati e codice vengono accodati a un eseguibile che prepara il sistema ospite ad eseguire l'applicazione e che si occupa di gestire le comunicazioni tra applicazione e sistema ospite: in Linoleum quel programma si chiama modulo di run time.
> la ringrazio per un'eventuale risposta
>
> --un ANOnimo fan

Prego.
Dov'e` la fregatura?
-
-
Re: @altgScritto daNon Autenticatoil 2012-04-13 19:49:18.0 alle 2012-04-13 19:49:18.0Scritto da:
> Scritto da: altg
> > Dov'e` la fregatura?
>
> è gengiva che si vergogna a chiederlo col suo nick
>
19:45 <@gengiva> pezzo di merda!!!
@@
19:45 <@frenchi>
19:46 -!- frenchi was kicked from ##fdt by gengiva [frenchi]
19:46 -!- Irssi: Join to ##fdt was synced in 0 secs
19:46 <@gengiva> maledetto spione
-
Re: @altgScritto daNon Autenticatoil 2012-04-13 19:52:35.0 alle 2012-04-13 19:52:35.0Scritto da:
> Scritto da:
> > Scritto da: altg
> > > Dov'e` la fregatura?
> >
> > è gengiva che si vergogna a chiederlo col suo nick
> >
>
> 19:45 <@gengiva> pezzo di merda!!!
@@
> 19:45 <@frenchi>
> 19:46 -!- frenchi was kicked from ##fdt by gengiva [frenchi]
> 19:46 -!- Irssi: Join to ##fdt was synced in 0 secs
> 19:46 <@gengiva> maledetto spione
>
19:47 <@frenchi> devo confessarvi una cosa.. si insomma.. ecco io sono gay e mi sego sui my mini pony
19:47 <@suoranciata> anche io frenchi, anche io-
Re: @altgScritto daNon Autenticatoil 2012-04-13 19:56:24.0 alle 2012-04-13 19:56:24.0Scritto da:
> Scritto da:
> > Scritto da:
> > > Scritto da: altg
> > > > Dov'e` la fregatura?
> > >
> > > è gengiva che si vergogna a chiederlo col suo nick
> > >
> >
> > 19:45 <@gengiva> pezzo di merda!!!
@@
> > 19:45 <@frenchi>
> > 19:46 -!- frenchi was kicked from ##fdt by gengiva [frenchi]
> > 19:46 -!- Irssi: Join to ##fdt was synced in 0 secs
> > 19:46 <@gengiva> maledetto spione
> >
>
> 19:47 <@frenchi> devo confessarvi una cosa.. si insomma.. ecco io sono gay e mi sego sui my mini pony
> 19:47 <@suoranciata> anche io frenchi, anche io
-
-
-
-
-