Oppure

Loading
04/05/09 13:08
pfiore
non so se questa è il posto giusto dove scrivere xkè sono nuovo, cmq sto facendo delle ricerche sul web, su come si crea un linguaggio di programmazione. ho trovato delle informazioni, solo che sono un pò confuso. Mi potete spiegare ed elencare quali sono i vari passaggi ke si fanno in ordine. Io ho trovato questo:

1) Scrivere la grammatica e poi costruire il parsel e il lexer
2) Fare un compilatore da zero
3) Creare un compilatore, un assembler e il linker

Se voglio partire da zero, mi potete accennare quali sono i passaggi ke si fanno per primi o magari mi dite altro? tanto io a settembre vado all'università informatica, quindi voglio almeno sapere un pò già da ora.

per favore non date quelle risposte lunghe 1 rigo, io vorrei sapere...vi pregooo
aaa
04/05/09 13:59
gigisoft
Postato originariamente da pfiore:

non so se questa è il posto giusto dove scrivere xkè sono nuovo, cmq sto facendo delle ricerche sul web, su come si crea un linguaggio di programmazione. ho trovato delle informazioni, solo che sono un pò confuso. Mi potete spiegare ed elencare quali sono i vari passaggi ke si fanno in ordine. Io ho trovato questo:

1) Scrivere la grammatica e poi costruire il parsel e il lexer
2) Fare un compilatore da zero
3) Creare un compilatore, un assembler e il linker

Se voglio partire da zero, mi potete accennare quali sono i passaggi ke si fanno per primi o magari mi dite altro? tanto io a settembre vado all'università informatica, quindi voglio almeno sapere un pò già da ora.

per favore non date quelle risposte lunghe 1 rigo, io vorrei sapere...vi pregooo


Salve,

in realta' non mi sono mai occupato di un vero compilatore pero' per quel che ne so gli elementi da progettare dovrebbero essere:

1) grammatica del linguaggio ( non serve la programmazione per questo )
2) scanner ( inteso come lettore del codice )
3) analizzatore lessicale ( controlla le singole parole )
4) analizzatore sintattico ( controlla le "frasi" )
5) analizzatore semantico ( controlla, nel limite del possibile, il significato del codice; dovrebbe essere quello che scova i "warning" )
6) traduttore
7) linker

Ciao :k:

Luigi
aaa
04/05/09 14:03
gio97
creare un linguaggio si programmazione è fuori dalla portata di molti programmatori, sicuramente non è semplice.
Se vuoi sapere già qualcosa prima di iniziare l'università piuttosto impara il C, credo che si studi in tutte le università di Ingegneria Informatica, ma non ne sono sicuro, mi mancano ancora 8 anni prima di andarci: io me lo sono imparato da solo a casa mia, con i libri di mia sorella, che fa quella facoltà.
Sicuramente non troverai un tutorial per creare un linguaggio di programmazione: forse qualche spunto, ma soprattutto ti servirà molta creatività per inventare qualcosa che ancora non esista, e quindi creare un linguaggio diverso da tutti gli altri.
Se ti vorrai cimentare in questa impresa mi piacerebbe partecipare alla creazione:D.
Ultima modifica effettuata da gio97 04/05/09 14:05
aaa
04/05/09 15:08
eddiewrc
si studia nel corso di laurea di Informatica (non ingegneria).. e più che tutorial troverai dei giganteschi libri...:rotfl:

io una idea per un linguaggio del tutto nuovo ce l'avrei.. ho anche cercato in giro e pare che nessuno ci abbia pensato! il problema è appunto la difficoltà (immensa) di scrivere un compilatore!!!

se qualcuno è interessato potremmo aprire un progetto... l'idea la espongosolo se se ne fa qualcosa!

Ultima modifica effettuata da eddiewrc 04/05/09 15:12
aaa
04/05/09 15:28
gigisoft
Salve,

l'idea del progetto per creare un compilatore sarebbe interessante ( sia per un linguaggio gia' esistente che per uno nuovo di zecca, naturalmente la seconda ipotesi sembra piu' stuzzicante ), se lo fate, tenetemi presente, tempo permettendo mi piacerebbe far parte del Team.
Per quanto riguarda tentativi precedenti, tempo fa' lessi un articolo riguardante un linguaggio creato da due studenti americani, si chiamava "Shakespeare" ( si proprio come lo scrittore ), tra le caratteristiche curiose c'e' che le variabili potevano avere solo il nome di un personaggio di una delle opere del suddetto, inoltre le istruzioni erano fatte in modo da sembrare battute di un copione ( con grammatica inglese ) :rotfl::rotfl::rotfl:

Ciao

Luigi
aaa
04/05/09 15:29
gio97
se proponi la tua idea innovativa io mi unisco, ma ad una condizione, se serve un altro linguaggio di programmazione si usa il C. :k:
aaa
04/05/09 16:09
eddiewrc
beh, era così ovvio che nn l'ho neanche detto.. il progetto sarebbe in C!

prendi il mio contatto di msn che ci accordiamo lì!
aaa
04/05/09 16:29
lorenzo
bah, più che un nuovo linguaggio(ne abbiamo fin troppi, ammettetelo)
servono nuove idee per il "modo" di programmare...
siamo andati dai linguaggi imperativi alla programmazione ad oggetti, passando anche per i linguaggi funzionali e per quelli logici. Ora serve qualcosa di nuovo per queste cose, non un altro linguaggio che di diverso ha solo il modo di dichiarare le variabili...


ps: non fraintendetemi, ognuno è libero di fare quello che vuole, però secondo me sarebbe più utile per tutti sprecare tempo ed energia in cose che serviranno poi a qualcosa e che non cadranno nel dimenticatoio dopo pochi mesi(se riescono a superare la fase di progettazione si intende, il 90% dei progetti amatoriali non arriva a compimento...vedi anche sezione progetti di questo stesso sito)
Ultima modifica effettuata da lorenzo 04/05/09 16:34
aaa