Каждый, кто интересовался разработкой компиляторов, не мог не слышать о знаменитой "Книге Дракона", классическом труде Ахо и Ульмана "Принципы разработки компиляторов". Развитие технологий компиляции привело к рождению очередного "дракона" — книги "Компиляторы. Принципы, технологии, инструментарий", — у которой теперь уже четыре автора, и каждый из них является высококлассным специалистом в данной области. Книга, как и предыдущее издание, начинается с изложения основных принципов разработки компиляторов, включая детальное рассмотрение лексического и синтаксического анализа и генерации кода. Особенностью данного издания является широкое освещение вопросов оптимизации кода, в том числе для работы в многопроцессорных системах. Строгость изложения материала смягчается большим количеством практических примеров. Написание компиляторов охватывает такие области знаний, как языки программирования, архитектура вычислительных систем, теория языков, алгоритмы и технология создания программного обеспечения. Помочь в освоении этих технологий и соответствующего инструментария и призвана данная книга. Несмотря на ее учебную ориентацию — в первую очередь, она предназначена для студентов и преподавателей соответствующих специальностей — книга будет полезна всем, кто работает над созданием компиляторов или просто .
Глава 1. Введение в компиляцию Глава 2. Простой синтаксически управляемый транслятор
Глава 3. Лексический анализ
Глава 4. Синтаксический анализ
Глава 5. Синтаксически управляемая трансляция
Глава 6. Генерация промежуточного кода
Глава 7. Среды времени выполнения
Глава 8. Генерация кода
Глава 9. Машинно-независимые оптимизации
Глава 10. Параллелизм на уровне команд
Глава 11. Оптимизация параллелизма и локальности
Глава 12. Межпроцедурный анализ
Приложение А. Завершенный пример начальной стадии компилятора
Приложение Б. Поиск линейно независимых решений
Предметный указатель
Книга представляет собой руководство по созданию веб-приложений на языке Ruby. Изучение построено на практических примерах, листинги которых есть почти на каждой странице. Даны основы Ruby, рассмотрены условные операторы, строки и регулярные выражения, операторы, функции, массивы, хэши, работа с файлами, классы. Описаны обработка XML, рефлексия, метапрограммирование, обработка исключений, инструментарий разработчика Tk и другие средства, включая RubyGems, RDoc и Embedded Ruby.
Книга посвящена гибкому моделированию ? процессу, базирующемуся на практической деятельности и описывающему принципы построения полезных моделей. Она начинается с рассмотрения идей, принципов и методологии гибкого моделирования и описания методик, которые повысят вашу производительность.