попроще и поменьше чем в драконе. более практический взгляд http://narod.ru/disk/15328278000/Algorithms_for_Compiler_Design.chm.html
JCronuz в основном на картинках и цэ. есть немного текста на ен. переводчики, включая гуглевский, переведут вполне. достаточно удобное оглавление. 11 метров цхм-ебок (не скан). оглавление Chapter 1 - Introduction Chapter 2 - Finite Automata and Regular Expressions Chapter 3 - Context-Free Grammar and Syntax Analysis Chapter 4 - Top-Down Parsing Chapter 5 - Bottom-up Parsing Chapter 6 - Syntax-Directed Definitions and Translations Chapter 7 - Symbol Table Management Chapter 8 - Storage Management Chapter 9 - Error Handling Chapter 10 - Code Optimization Chapter 11 - Code Generation Chapter 12 - Exercises Index
Bodhidharma ну ктото ж их пишет, как вы думаете? это не только (нативные/встраиваемые) компиляторы, но и интерпретаторы, жит, целевые скриптовые системы, конфигураторы средней и выше сложности, виртуальные машины, обработчики сложных конструкций вроде регулярных шаблонов итд и не только написание, но и модификация существующих под конкретную задачу это как и с программированием вообще - большинство людей считает, что думает и принимает решения умная машина, но программисты понимают, что думали и принимали решения по возможным вариантам люди которые писали программу.
какого вида и качества выход? по какому стандарту вход? на каком языке? требования вообще? бюджет? и вообще, предлагаю, если вам тема топика кажется глупой и ненужной, не флудить. некоторые с подобными вещами сталкиваются
C++ забывайте сразу. стандарт на него достаточно сложен. С и прочее - это только фронтенды. оптимизаторы и кодогенераторы/жит/вирт машины достаточно универсальны. если вы хотите поразбираться/поизучать, то вам стоит поработать для начала с какой нибудь не самой сложной опенсорцовой разработкой (в смысле почитать код, поэкспериментировать с ним).
когда на нем пишешь - да, не так уж, есть/были и посложнее. напишите под него парсер чтоб он просто мог разобрать исходники того же буста (те без мс/гну уклонов). когда сделаете можно будет говорить дальше
фронтенд только парсит исходник в дерево разбора и максимум переводит его в некое внуреннее представление п(ромежуточный) код. дале идут оптимизаторы (если идут) и бэкенд с кодогенератором. попробуйте. компилеры или части их тут писали многие. (не знаю что вы вкладываете в слово "компилер") некоторые местные форумчане есть и в списках разрабов крупных тулчейнов. если вы хотели просто потрепаться, то такая реакция на ваши слова, да, лишняя. а если вы решили таки писать, то вполне уместна. в частности, замечание чтоб вы без опыта не начинали С++ (да и с опытом, но без особой нужды)
Кстати, появился русский перевод Compiler Construction Вирта. В магазинах уже продают. На Озоне например.
Monogen 131 страницу можно и на ене прочесть http://www-old.oberon.ethz.ch/WirthPubl/CBEAll.pdf тем более, что там > 50% на диаграмы и примеры кода идет