Todo el mundo que haya pasado por el primer cuatrimestre de la Ingeniería Informática (a.k.a. "la superior) habrá tenido el placer (o no) de cursar la asignatura "Procesadores del lenguaje", que está orientada a construir un compilador (o al menos una buena parte de las fases de la construcción de un compilador), bajo la tutela del incombustible Libro del Dragón Rojo, a.k.a. "Salvavidas".
Acabo de encontrar un artículo recién salido del horno (Febrero de 2008) sobre cómo crear un compilador para .NET, escribiéndolo en C#, pasando desde la definición del lenguaje en BNF hasta... bueno, probablemente más de lo que necesites para conseguir una Matrícula de Honor en la asignatura
http://msdn.microsoft.com/msdnmag/issues/08/02/CompilerWriting/default.aspx?loc=en
PD: Para los que han elegido la optativa compiladores e intérpretes también es completamente válido el artículo ;) ¡y esa (si la memoria no me falla, que hace ya mucho que la cursé) sí es del segundo cuatrimestre!
Fullbyte Alchemist