Questo sito utilizza cookies solo per scopi di autenticazione sul sito e nient'altro. Nessuna informazione personale viene tracciata. Leggi l'informativa sui cookies.
Username: Password: oppure
Tutto e di + - Collaboratore a compilatore
Forum - Tutto e di + - Collaboratore a compilatore

Avatar
TheDarkJuster (Member)
Guru^2


Messaggi: 1620
Iscritto: 27/09/2013

Segnala al moderatore
Postato alle 16:46
Giovedì, 05/11/2015
Buon giorno a tutti!
Ho cominciato un nuovo progetto: un compilatore!
Beh, forse non esattamente un compilatore completo visto che è composto da un lexer e un parser e tutto ciò che è legato alla compilazione/esecuzione è rimandato a LLVM.

Il linguaggio in questione è un object-C semplificato ed esteticamente ritoccato per rendere il sorgente più leggibile e spronare il programmatore a mantenere un certo ordine, anche "visivo".

Il progetto è nato un po' per divertimento e un po' perchè sento la mancanza di qualcosa del genere.....
Il progetto non è un semplice compilatore. Mi spiego meglio:
il progetto si compone di varie parti e tutte (o quasi tutte) hanno un fortissimo legame con il concetto di "progetto".
Infatti il "compilatore" non compila mai un singolo file, ma un progetto intero. Il progetto è descritto tramite un file xml che contiene diverse informazioni, ad esempio i sorgenti che compongono il progetto, gli autori, il nome del progetto, la descrizione e la documentazione.
La documentazione viene generata in fase di build insieme al prodotto della documentazione.

Il progetto non nasce per l'esigenza di avere un nuovo o completo linguaggio di programmazione..... Il progetto nasce dal principio che ai programmatori ogni tanto piace essere "viziati" da un ambiente il più possibile "integrato", semplice e facile.

Ora come ora il progetto è appena iniziato, e sto scrivendo l'analizzatore lessicale, che è già in grado di riconoscere stringhe e commenti.

Chiunque voglia prendere parte alla creazione di questo "viziatore di programmatori" mi contatti senza alcun timore! Chi non avesse le abilità o il tempo per espandere il linguaggio sappia comunque che non sarà completamente escluso dal progetto, e che avrà compiti che sembrano secondari, ma di primaria importanza, ad esempio quello di mantenere la documentazione del progetto e del linguaggio, di provare il tool o anche semplicemente di proporre nuove idee :heehee::heehee::heehee:

Il progetto è reperibili qui: https://github.com/NeroReflex/Nova

Ripeto che il progetto non è nato per mancanza di linguaggi o soluzioni, ma più per un "capriccio". Ho voluto disegnare un ambiente di sviluppo confortevole e veloce per il programmatore, in maniera tale da rendere il linguaggio in sè e ogni fase dello sviluppo gradevole per il programmatore e per chi vorrà studiare il suo progetto.

PM Quote