Модераторы: Се ля ви
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> «Книга Дракона 2», Выходит новое издание легендарной книги 
:(
    Опции темы
powerfox
Дата 6.2.2008, 19:51 (ссылка) |    (голосов:5) Загрузка ... Загрузка ... Быстрая цитата Цитата


I wanna fork()
****


Профиль
Группа: Комодератор
Сообщений: 3990
Регистрация: 1.10.2005
Где: Санкт-Петербург

Репутация: 2
Всего: 97





«Компиляторы:принципы, технологии и инструменты»


2-е издание, 2008 год
Альфред В. Ахо, Моника С. Лам, Рави Сети, Джеффри Д. Ульман 
Compilers: Principles, Techniques, and Tools, 2nd Edition
Alfred V. Aho, Monica S. Lam, Ravi Sethi, Jeffrey D. Ullman

user posted image



"Издательский дом "Вильямс" выпускает 2-е издание знаменитой "Книги Дракона" ("Dragon Book") - "Компиляторы:принципы, технологии и инструменты" (Compilers: Principles, Techniques and Tools. 2nd Edition. Alfred V. Aho, Monica S. Lam, Ravi Sethi, Jeffrey D. Ullman, 2007).


Этим летом я поехал на книжную ярмарку с целью приобрести «Книгу Дракона». Правда, о ней я мало что знал, просто года три назад случайно увидел в магазине (заинтересовало название + не встречал ничего похожего на полках магазинов). Но тогда она вызвала только интерес (3 года назад компиляторы мне были не по зубам). И увы, этим летом в продаже её не было. Но всё что случается, случается к лучшему.

В этом году выходит новое издание! Значительно переработанное и дополненное. Ещё бы, ведь первое издание появилось в 1986 году. А с того времени произошли значительные изменения: появились новые языки программирования (С++,Java , С#...), значительно улучшились методы оптимизации, изменилась архитектура компьютеров, появились многоядерные процессоры. Конечно, ни в одной из областей не произошло революции, но современные компьютеры значительно отличаются от тех, что использовались в 1986 году. Кроме того, крупные проекты всегда нуждаются в оптимизации кода и быстрой компиляции (кто хоть раз собирал KDE, Mozilla или ядро Linux поймут). А оптимизация и быстрая компиляция практически взаимоисключающие вещи.

Само название книги говорит о её содержании. Поэтому я не стану особо распространяться на эту тему. Она рассчитана на людей, знакомых c С или С++/Java. Все алгоритмы приведены в виде "макетов" кода с комментариями (естественно, никто не стал использовать блоксхемы). Книга написана простым и понятным языком. Но думаю, что непосвящённому читателю стоит быть внимательным. Авторы уделили значительное внимание базовым понятиям: теории языков, архитектуре вычислительных систем, языкам программирования.

Наверное, любой начинающий программист хотел бы разработать свой компилятор: в списке todo это второй пункт после разработки своей операционной системы smile Но книга рассчитана не только на энтузиастов-мечтателей, но и на профессиональных разработчиков, далёких от создания компиляторов. Описанные в ней алгоритмы могут быть использованы и при создании языковых процессоров; трудно найти приложение, которое бы не использовало синтаксический/лексический анализатор. Кроме того, на мой взгляд, хорошее понимание процесса компиляции может помочь в работе над оптимизацией программы (если открыть man gcc , то многое обычным смертным непонятно). Иными словами, кроме того, что после прочтения книги у вас будет прекрасная база для создания своего собственного компилятора (как существующего языка, так и своего), вы получите отличное представление об архитектуре компьютера и о применении методов компиляции для широкого круга задач проектирования и разработки программного обеспечения.

В процессе удвоения номера издания, удвоилось и число авторов (в написании книги приняли участие так же Monica S. Lam и Ravi Sethi). Новый материал включает следующие главы:
  • Глава 7: Среды времени выполнения
  • Глава 10: Параллелизм на уровне команд
  • Глава 11: Оптимизация параллелизма и локальности
  • Глава 12: Межпроцессорный анализ
По сравнению с предыдущим изданием многие главы значительно переработаны. В приложении A можно найти завершённый пример начальной стадии компилятора (на Java). Примеры в книге преимущественно написаны на Си (в основном очень небольшие), но очень часто встречается и код на Java (все завершённые примеры написаны на нём, но благодаря пояснениям авторов мне, как человеку незнакомому с Java, всё было абсолютно понятно).
Так как я получил возможность ознакомиться только с частью книги, то привести статистику по языкам не могу - однозначно можно сказать, что Java потеснил Си. Особенностью нового издания является широкое освещение вопросов оптимизации кода, в том числе для работы в многопроцессорных системах.

Я уже знаю, что с удовольствием буду читать этим летом smile В моём списке эта книга помечена, как Must Read.


Это сообщение отредактировал(а) powerfox - 3.4.2008, 20:37


--------------------
user posted image
PM WWW   Вверх
Exception
Дата 17.2.2008, 02:07 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник Клуба
Сообщений: 4525
Регистрация: 26.12.2004

Репутация: нет
Всего: 186



Надо.
PM   Вверх
s1lver
Дата 30.5.2008, 18:33 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 580
Регистрация: 14.12.2007
Где: Россия

Репутация: нет
Всего: нет



Где бы её достать-то? 


--------------------
Я собрался жить вечно - пока все идет нормально!
PM MAIL ICQ   Вверх
powerfox
Дата 30.5.2008, 22:26 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


I wanna fork()
****


Профиль
Группа: Комодератор
Сообщений: 3990
Регистрация: 1.10.2005
Где: Санкт-Петербург

Репутация: 2
Всего: 97



Цитата(s1lver @  30.5.2008,  19:33 Найти цитируемый пост)
Где бы её достать-то?  

Я не думаю, чтобы весь тираж раскупили. В магазинах новое издание должно быть.


--------------------
user posted image
PM WWW   Вверх
Krawler
Дата 20.11.2008, 16:24 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 2
Регистрация: 25.6.2008

Репутация: нет
Всего: нет



А в электронном виде можно? А то лень в магазин идти smile
PM MAIL   Вверх
Rickert
Дата 15.4.2009, 05:21 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Ситхи не пройдут!
****


Профиль
Группа: Комодератор
Сообщений: 3356
Регистрация: 11.7.2006
Где: Лакрима

Репутация: 1
Всего: 52



За новость конечно спасибо smile 


--------------------
Ни что не внушает сна крепче, чем день приисполненный трудов!
PM MAIL WWW Skype GTalk   Вверх
ikoryakin
  Дата 20.6.2009, 13:49 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 1
Регистрация: 20.6.2009

Репутация: нет
Всего: нет




Модератор: Сообщение скрыто.

PM MAIL   Вверх
LPPL
Дата 24.1.2010, 21:22 (ссылка)    | (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 2
Регистрация: 22.1.2010

Репутация: нет
Всего: нет



привет всем

Это сообщение отредактировал(а) LPPL - 24.1.2010, 21:23
PM MAIL   Вверх
neutrino
Дата 29.11.2010, 14:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Gothic soul
****


Профиль
Группа: Модератор
Сообщений: 3041
Регистрация: 25.3.2002
Где: Верхняя Галилея, Кармиэль

Репутация: нет
Всего: 62



Читал это и предыдущее издание. Использовал многие алгоритмы/идеи из 2, 3 и 4 глав. 
Число ошибок, хоть и сократилось, но еще есть, что исправлять. 
Книга - просто маст для программистов, т.к. позволяет не только понять как работает компиляция, но и каким образом сделать дизайн языку (что в нашу эру DSL очень полезный навык).

Рекомендую всем. Книга кросс-платформенная smile Т.е. если Джеффри Рихтер хорош для дотНета а Страуструп для С++, эта книга поможет любому. Кроме того, в последнем издании рассмотрены фичи новых ЯП таких как C#.

+++++++


--------------------
The truth comes from within ...

Покойся с миром, Vit 
PM MAIL WWW ICQ Skype GTalk   Вверх
Nostardamus
Дата 29.10.2017, 13:34 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 26
Регистрация: 29.10.2017

Репутация: нет
Всего: нет



нужно прочекать книженцию
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила раздела "Философия программирования":
Се ля ви

Форум "Философия программирования" предназначен для обсуждения вопросов, так или иначе связанных с философскими аспектами разработки ПО:

• вопросы перспективного развития методов написания ПО;

• изменяющиеся языки и методологии программирования;


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Се ля ви.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Философия программирования | Следующая тема »


 




[ Время генерации скрипта: 0.1439 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.