Per chi vuole scriversi un compilatore per il CLR, sicuramente un grande aiuto troverà nella Microsoft Common Compiler Infrastructure (CCI). Questo framework non è direttamente scaricabile ma arriva (per esempio) insieme al compilatore Zonnon o all'utilissimo FxCop.
Purtroppo, le versioni della CCI che troverete in Zonnon e FxCop sono diverse:
Zonnon:
- System.Compiler.dll (Compiler oriented replacement for System.Reflection and System.Reflection.Emit)
- System.Compiler.Framework.dll (Contains a collection of standard compiler base classes as well as visitors for the standard node types defined in System.Compiler)
- System.Compiler.Runtime.dll (Extensions to the Common Language Runtime used by the Common Compiler Infrastructure)
FxCop
- Microsoft.Cci.dll (Incorpora alcune classi di Fugue, senza però utilizzare gli assembly di Fugue...)
Mi piacerebbe parlare in un incontro di questa CCI (per esempio diviso in due sessioni: una di presentazione dell'infrastruttura e l'altra di implementazione con tanto di codice) - qualcuno interessato? potremmo organizzarci per un sabato a marzo/aprile (per esempio nella prima metà di marzo, sempre in un sabato, terrò una sessione su come potremmo sfruttare le funzionalità di C# 2.0 per implementare in modo innovativo alcuni design pattern; dettagli a breve in un altro post).
P.S.: Riprendo a bloggare, sì :-)