RE:necesito hacer un compilador
Un compilador de que, si es de JAVA no le veo tan dificil, existen usas todo lo que provee el SDK y listo, claro esta debes leer bien la documentacion y lo entiendes, para el analizador semantico sintactico y de lexico, pues tambien existen librerias, malo que de momento no las recuerdo, pero dejame ver en el trabajo mañana debo tenerlas, hace poco hice algo simple mas bien analizaba XML y XHTML, y com seso no se compila pues sola bastaba con verificaciones de sintaxis y cosas de esas sin ambargo sea cual sea tu caso primero planteate una estructura correcta de tu sistema, y en tonces todo saldra, Suerte