Достоинства
Кнута всегда приятно почитать, поделать упражнения. Его книги заставляют думать, каким бы заезженным не был этот штамп. Опять же, типографика для такого тяжелого, испещренного формулами и диаграммами текста безупречна, недаром Кнут потратил много лет на TeX и METAFONT. Ну и вообще издание очень качественное, спасибо издателю.
Недостатки
Иногда, довольно часто, готовые рецепты из книг Кнута извлечь тяжело. К тому же, по факту большая часть тома устарела. Говорят, классика не стареет, но когда речь заходит про такую инженерную дисциплину как программирование, это не всегда так, мягко говоря.
Комментарий
Три примера, именно касательно второго тома: 1. Генерация случайных чисел. Долго и обстоятельно обсуждаются линейные конгруэнтные генераторы, имеющие известные проблемы, и классические тесты (ставшие классическими после 1го издания 60-х годов) на проверку качества генераторов. В то время как Джорж Марсаглия в середине 1990x годов предложил гораздо более крутые тесты (которые генераторы Кнута проваливают) и гораздо более качественные генераторы, которые к тому же чрезвычайно просты в реализации, - простой MWC генератор вообще можно реализовать одной единственной строчкой на Си. У Кнута понятно об этом ни слова, ведь второй том вышел примерно в то же время. Но вообще уже 20 лет прошло с тех пор, как-никак. А ведь еще вышел Mersenne Twister, причем тоже довольно давно. Пример 2. Арифметика с плавающей точкой. Опять же, исключительно полезный материал для всех, кто занимается программированием численных методов. Но даже сам Кнут пишет в конце раздела, что в конце 80х вышел стандарт IEEE754, но машина MIX, используемая в книге, не поддерживает этот стандарт. Говорит, что MMIX будет поддерживать, но это только следующее издание, и тогда он все опишет как надо. То есть, какая-то арифметика с плавающей точкой описана, но она не совпадает с тем, что используется уже больше 20 лет. 3. Один из фундаментальных численных алгоритмов - быстрое преобразование Фурье, не описан в основном материале, а дан лишь как упражнение. Разумеется, в книге нет известных диаграмм с "бабочками". А из очень компактной нотации Кнута мне кажется совершенно невозможно вывести практическую реализацию БФП. Слишком там абстрактно, академично написано. Про продвинутые варианты типа radix-4, split-radix, Винограда и т.д., про вещественные преобразования я вообще молчу. И про вейвлеты молчу. Может просто эта тема автору не так интересна.
Короче говоря, 2-й том (как и 1-й, кстати) нуждаются в обновлении. 3-й том пока держится бодрячком. Дай бог здоровья автору! Главное, что процесс пошел, вышло описание машины MMIX отдельной... Читать полностью