Non sono sicuro se questo è quello che stai cercando, ma dopo che ho had a Question on SO Ho creato un .net Compiler for Brainf**k come excersize (Part 6 contiene l'attuale codice sorgente del compilatore ed è anche on GitHub)
In sostanza, l'attuale Il compilatore può essere scritto in qualsiasi lingua .net e utilizzare lo spazio dei nomi System.Reflection.Emit per creare assiemi, classi, metodi ecc. Ed emetterlo in essi.
L'effettivo lavoro di creazione di una nuova lingua implica ovviamente la scrittura di un parser/lexer/analizzatore/qualsiasi cosa possa suddividere il programma in classi e "alimentare" il compilatore - scusa, non ho esperienza in questo, ma controlla this list of resources come scrivere un compilatore.
Si desidera leggere ECMA-335 per sapere come funziona la CLI: quali tipi di dati supporta e quali comandi esegue effettivamente.
fonte
2010-10-04 23:42:01
Si sarebbe uscita .NET IL. Il runtime .NET gestiva la compilazione e l'esecuzione di quel codice. Non sono sicuro degli altri pezzi. –
simili [risorse da imparare-come-creare-un-compiler-interprete-for-the-net] (http://stackoverflow.com/questions/1448643/resources-to-learn-how-to- create-a-compiler-interpreter-for-the-net-framework) – nawfal