LINUX.ORG.RU

Боюсь что только Дональд.

urxvt ★★★★★★★★★★★★
()

Я начинал читать в своем время, когда пары прогуливал.
Но первый том так и не осилил, при этом возникло стойкое желание все же прочитать до конца. Книжка очень интересная.

trex6 ★★★★★★★★
()

Я даже SICP не осилил, а вы тут со своим Кнутом!

CARS ★★★★
()

никто ибо матан.

это отличная энциклопедия по алгоритмам (их синтеза, оценки вычислительной сложности) для в основном последовательного одноголового исполнителя (сети сортировки как исключения)

учитывая поиск оптимального по тому или иному критерию - чистый матан нужный как правило в космосе и редко нужный в быту где используют наслоения инструментов. имено ксати поэтму и язык реализации mmix - будь кнут ещё более крут в электротехнике была бы глава посвещёная бутстрапу с транзисторов до «работающего» вычислителя с mmix

qulinxao ★★☆
()

интересно мужик пишет, я хоть и жалкий гуманитарий, но потихоньку первый том про алгоритмы абзац за абзацем осиливаю :)

cuki ★★★★
()

Кнут - это теория программирования. Полезно почитать для растяжки мозгов. Например так: есть задача сортировки, придумай сам алгоритм, потом сравни с тем что есть у Кнута, посмотри другие алгоритмы. И т. д. С практической точки зрения применения мало (я не говорю что нет совсем), так как большинство алгоритмов уже реализованы, например в STL на C++, да и в Java есть (знаю от товарища). Притом они настолько оптимизированы, что самописный алгоритм по скорости не сравнится, наверное на ASMе писали. Но для понимания процесса очень важно. Например, я только недавно начал заставлять себя использовать двунаправленные очереди там, где раньше использовал массивы.

Ваш, ИМХО.

Kroz ★★★★★★★★★★★★★★★
()

Да, если ты пишешь низкоуровневые вещи.

harper
()

Первый и третий тома каждый день на практике применяю. Второй как-то не доводилось.

Reset ★★★★★★★★★★★★★★★
()
Ответ на: комментарий от aist1

Справочник это просто перечисление алгоритмов. У Кнута много теории. Поэтому это не справочник.

Reset ★★★★★★★★★★★★★★★
()

Не осилил, надеюсь до конца жизни осилю и пойду работать в мастдай :)

самое главное - применить на практике?

Не факт, что нужно будет, таки все зависит от специфики современного программиста.

Ginki
()
Ответ на: комментарий от Reset

Книги можно использовать как справочники. Что я и имел в виду. Это не занимательное чтиво, какое сейчас принято писать, легко читать, но сложно использовать. Так как вода.

aist1 ★★★
()

Покупал первый том несколько лет тому назад. Читаю уже в 3-й раз, дохожу до языка mix и бросаю. В этот раз надеюсь дойти до конца.

yoki
()

Кнут читается достаточно легко по сравнению с «Дисциплиной программирования» Дейкстры. Вот читаешь Дейкстру и понимаешь что целые главы ни о чем.

yoki
()

Ответ на этот пост из ветки, с которой началось это обсуждение.

Мои задачи и интересы лежат далеко от сортировок и алгоритмов, поэтому можешь считать меня нубом, но мне это не нужно. Я изучаю только то, что мне: 1 Пригодится в работе. 2. Интересно профессионально.

То есть, я считаю это узкоспециализированные вещи. Просто в этой стране считается что раз программер, должен знать все. А я считаю, что если человек специализируется на чем то - про другое не обязан знать. насколько знаю, за рубежом такой же подход применяется.

То есть, разработчику под драйверы нафиг знать про GUI, а GUI разработчику - дурацкие сортировки, которые он нигде не применяет.

К тебе вопрос - сам то все прочитал книги или просто знаешь эти слова?

Для начала, я нубом тебя не считаю. Это был просто риторический прием, немного грубоватый - согласен. Всё знать невозможно и даже фундаментальные знания, не применяемые на практике, будут лежать мертвым грузом и отъедать когнитивные ресурсы мозга.

Фишка в том, что мы никогда не знаем, когда эти знания вдруг пригодятся. И лучше бы чтобы они в этот момент были. Наверное, это стоит того, чтобы хранить их в голове до поры до времени, а выкидывать из неё что-нибудь менее полезное, пусть и более приятное.

Про себя. Я вообще Кнута не читал. Но я постоянно читаю научные статьи по своим направлениям. Люблю свежачок. :)

aist1 ★★★
()
Ответ на: комментарий от yoki

Дейкстра читается как библия - если кусок прочитывается пустым - считай что мудрость не по тебе.

вот кусок как ни страно из «goto вредно» :

Мое второе замечание - то, что наши интеллектуальные силы в большей степени связаны со статическими отношениями, и что наши способности представлять процессы, развивающиеся во времени, развиты относительно плохо. Исходя из этого, мы должны делать (как мудрые программисты, осознающие свои ограничения) все возможное, чтобы сократить концептуальную пропасть между статической программой и динамическим процессом, чтобы сделать соответствие между программой (разворачивающейся в пространстве текста) и процессом (разворачивающимся во времени) настолько очевидным, насколько это возможно. [/qoute]

после ООП - евангелизма и возрождение динамического ООП (smalltalk like в objC) и переноса С++ из статического ООП (без перекомпиляции нужно очень глубоко лезть в учёт спефики компилятора что бы на ходу менять класс как целое у группы обьектов этого класса) в функционализм stl+boost

читается всё также свежо ибо описывает человека и его характерные ограничения.

qulinxao ★★☆
()
Ответ на: комментарий от aist1

тут ( в ситуации гарантрованости узнования уже существующего решения для обнаруженной ситуации) полезно систематическое образование в области деятельности . т.е знание-понимание какова структура прикладной области.

qulinxao ★★☆
()
Ответ на: комментарий от qulinxao

тут ( в ситуации гарантрованости узнования уже существующего решения для обнаруженной ситуации) полезно систематическое образование в области деятельности . т.е знание-понимание какова структура прикладной области.

Ну это как раз о пользе немотивированного или не напрямую мотивированного образования.

aist1 ★★★
()

Украшают полку. В том числе и тоненькие приложения, позиционируемые в продаже как 4-й том. Читать выборочно. Знания, изложенные в них быстро теряют частично свою актуальность с наступлением декларативного функционального программирования на Haskell, Erlang.

Единственно, чему нет альтернатив из творений Кнута, так это его системе TeX (и производной от нее LaTeX), на ней и были подготовлены оригинальные издания «Искусства программирования» и русский последний перевод последнего издания.

Deleted
()
Ответ на: комментарий от Deleted

с наступлением декларативного функционального программирования на Haskell, Erlang

Так и вижу как все программы в мире переписываются на Хаскеле!

buddhist ★★★★★★★★★★★★★
()
Ответ на: комментарий от buddhist

Программы не требуется переписывать, алгоритмы выглядят на Хаскеле совсем по другому и большая часть алгоритмов уже написана и легко находится в готовых модулях.

А вот новые идеи действительно лучше реализовывать на лучших платформах.

Deleted
()
Ответ на: комментарий от Deleted

На низком уровне все работает императивно, поэтому книги Кнута никогда не потеряют актуальность.

Reset ★★★★★★★★★★★★★★★
()
Ответ на: комментарий от Deleted

Хаскель это очень специфический язык. Тут за одним символом может стоять глубокий нетривиальный смысл. Поэтому алгоритмы только _выглядят_ по другому, но если начнешь копать, то окажется всё тоже самое.

Reset ★★★★★★★★★★★★★★★
()
Ответ на: комментарий от Deleted

алгоритмы выглядят на Хаскеле совсем по другому

ORLY?

buddhist ★★★★★★★★★★★★★
()
Ответ на: комментарий от Reset

за одним символом может стоять глубокий нетривиальный смысл

Не путайте Haskell и APL :)

buddhist ★★★★★★★★★★★★★
()
Ответ на: комментарий от Deleted

perestoronin

Знания, изложенные в них быстро теряют частично свою актуальность с наступлением декларативного функционального программирования на Haskell, Erlang.

Отличный вброс, ящитаю.

Pavval ★★★★★★★★★
()

и самое главное - применить на практике?

в деятельности, самое главное - это чтобы нравилось. Если не нравиться, то и мучаться не стоит. Не надо читать Кнута, чтобы что-то доказать(если, конечно, не самому себе), надо читать, если есть потребость.

dimon555 ★★★★★★★★★
()
Ответ на: комментарий от Pavval

Отличный вброс, ящитаю.

толстота, особенно в части, что декларативное и функциональное - это наступающее будущее.

dimon555 ★★★★★★★★★
()
Ответ на: комментарий от Reset

Если проекты типа микроядра House перестанут быть экспериментальными, то и на низком уровне можно будет уйти от необходимости использовать Си.

Так категорично «никогда не потеряют актуальность книги Кнута и императивное программирование» нельзя утверждать, думаю все будет быстрее чем можно даже себе представить, конечно же не за 2-3 года.

Deleted
()
Ответ на: комментарий от Deleted

Где? Я надеюсь, что у вас, в отличии от лисперов, есть примеры популярных и нужных программ, написанных на Erlang.
Не стесьняйтесь, приводите примеры. Их ведь наверняка больше десяти.

trex6 ★★★★★★★★
()
Ответ на: комментарий от trex6

Erlang мне не интересен, упомянул его так как он на слуху и подобен в чем-то Haskell, Нужные мне программы есть на Haskell, Pandoc к примеру. Полноценные аналоги ему на традиционных языках мне не известны.

Deleted
()
Ответ на: комментарий от Reset

Думаю что и железо надо приводить к концепции.

Но ничто не мешает осуществлять на современном железе такие проекты как микроядро Horse, жаль что это всего лишь успешный эксперимент.

Deleted
()
Ответ на: комментарий от Deleted

Осталось назвать девять программ.

trex6 ★★★★★★★★
()

хэши из третьего тома «сортировка и поиск» пригодились

ananas ★★★★★★★★★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.