Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > C/C++: Общие вопросы > Написание собственного компилятора


Автор: FLy_ 14.2.2008, 16:10
Хотел бы попробовать написать простенький компилятор, но не знаю с чего начать, помогите ссылкой на какой нибудь урок или советом.

Автор: FiMa1 14.2.2008, 16:18
Цитата(FLy_ @ 14.2.2008,  16:10)
Хотел бы попробовать написать простенький компилятор, но не знаю с чего начать, помогите ссылкой на какой нибудь урок или советом.

Я бы посоветовал начать с написания Интерпретатора. Что-нибудь вроде http://en.wikipedia.org/w/index.php?title=Ch_interpreter&printable=yes - cross-platform C/C++ interpreter. Про написание интерпретаторов есть у Шилдта.

Вот еще про Ch interpreter - http://www.ddj.com/article/printableArticle.jhtml;jsessionid=5NNOVCCINTGFEQSNDLRSKH0CJUNN2JVN?articleID=184402054&dept_url=/cpp/

А про статью Как написать Ваш собственный компилятор - это ты махнул немного. Про это и книг некоторых недостаточно будет. Рискуешь потерять интерес к "задачке" за то время, которе необходимое для разработки компилятора в одиночку. Но не буду отговаривать...

Автор: Mayk 14.2.2008, 16:35
Всйо нижесказанное имхо.

Цитата(FLy_ @  14.2.2008,  20:10 Найти цитируемый пост)
Хотел бы попробовать написать простенький компилятор, но не знаю с чего начать, помогите ссылкой на какой нибудь урок или советом. 

Для начинающих  книга http://www.oberon.ethz.ch/WirthPubl/CBEAll.pdf.
А если хочется именно step by step, то советую почитать вот эту http://www.stack.nl/~marcov/compiler.pdf на 300 страниц.
Порог вхождения в эти материалы очень низкий, если не нулевой. Это самые легкие материалы по компиляторостроению из всех что я когда-либо видел(а это около 30 pdf'ок по поиску "compiler design" в ed2k).

 Статья Jack W. Crenshaw ОЧЕНЬ подробно всё разжевывает.  Там чуть ли не каждая глава начинается с "а теперь мы начнём всё сначала" [я дальше ~5 главы не осилил из-за этого]. 


правда LR парсеры у Вирта упоминаются вскольз, а у Креншау кажестя вообще не упоминаются, но LL  интуитивно понятнее LR'ов




Автор: vadiml 14.2.2008, 22:38
Альфред Ахо, Рави Сети, Джеффри Ульман
Компиляторы. Принципы, технологии, инструменты
http://www.infanata.org/2005/11/28/kompilyatory__principy__tehnologii__instrumenty.html
сама книга -- http://rapidshare.com/files/2510091/_A._Aho__R._Seti_D._Ul_man__Kompilyatory_printsipy__tehnologii_i_instrumenty.rar
Это первое издание.

Совсем недавно вышло на русском второе, было бы лучше найти его в бумажном виде.

Автор: FLy_ 15.2.2008, 22:32
Большое спасибо всем ответившим, буду читать

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)