Цитата из Тюринговской лекции Дейкстры (1972-й год, между прочим):
А вот ещё интересный отрывок из той же лекции, затрагивающий в каком-то смысле тезис Ворфа-Сапира, применяя его к программистам:
Выделено мной.
I pray daily that more of my fellow-programmers may find the means of freeing themselves from the curse of compatibility.На что в 2002-м году я хотел бы отреагировать так: Ха! Нет, лучше так:
Ха. Ха. Ха.
А вот ещё интересный отрывок из той же лекции, затрагивающий в каком-то смысле тезис Ворфа-Сапира, применяя его к программистам:
Now for the fifth argument. It has to do with the influence of the tool we are trying to use upon our own thinking habits. I observe a cultural tradition, which in all probability had its roots in the Renaissance, to ignore this influence, to regard the human mind as the supreme and autonomous master of its artifacts. But if I start to analyse the thinking habits of myself and of my fellow human beings, I come, whether I like it or not, to a completely different conclusion, viz. that the tools we are trying to use and the language of notation we are using to express or record our thoughts, are the major factors determining what we can think or express at all![...]
Выделено мной.
И ничего смешного.
Date: 2002-08-18 01:26 am (UTC)Дейкстра же говорит о *его* fellow-programmers, а не о ваших.
Дейкстра прав. Вне зависимости от года или текущей версии VB, или STL ( или чем вы пользуетесь? )
Был такой финский студент, например, который поклал на compatibility. И ничего. А до него был один американский сумасшедший, который тоже поклал на compatibility. И тоже. Ничего получилось. Все не так примитивно, конечно, но .... Кстати, дедушка Кнут тоже поклал на compatibility.
Re: И ничего смешного.
Date: 2002-08-18 02:22 am (UTC)вы, например, под compatibility имеете в виду совместимость с операционными системами Майкрософта. что для меня, например, выглядит странно - по-моему, вот уж кто поклал на совместимость - это майкрософт как раз.
Дейкстра же, видимо, имеет в виду в первую очередь совместимость с более ранними версиями вашего собственного продукта.
Re: И ничего смешного.
Date: 2002-08-18 02:56 am (UTC)Это смешно. Вообще-то я пользуюсь тем, что нужно для решения задачи.
Был такой финский студент, например, который поклал на compatibility.
Это как он поклал - тем, что заново имплементировал операцинную систему, которой к тому моменту исполнилось четверть века, не добавил в неё ничего существенного и скрупулёзно сохранил все её интерфейсы?
А до него был один американский сумасшедший, который тоже поклал на compatibility. И тоже. Ничего получилось.
А этот как поклал? Тем, что переписал уже существующий редактор на другом языке? Тем, что написал новый компилятор к старому языку 20-летней давности, ничего к этому языку не добавив? Или тем, что основал проект, целью которого заявил - переписать заново все стндартные утилиты всё той же старой операционной системы, сохраняя всю функциональность и интерфейсы?
Очень смешные примеры.
Кстати, дедушка Кнут тоже поклал на compatibility.
Вот Кнут действительно поклал, когда TeX писал. Это редкое исключение из правил. Но в этой области и не было никаких универсальных стандартов.
Re: И ничего смешного.
Date: 2002-08-18 04:08 am (UTC)Это как он поклал - тем, что заново имплементировал операцинную систему, которой к тому моменту исполнилось четверть века, не добавил в неё ничего существенного и скрупулёзно сохранил все её интерфейсы?
Нет, тeм, что поклал на CDE и прочие продукты консорциума по компатибилити (был такой. Типа современного W3C. На который тоже надо класть).
В остальном примерно так же, но мы не будем размениваться на мелочи.
Итак, что же такого смешного сказал нам Дейкстра, который (в отличие от вас), придумал, например, алгоритм перемывки в польскую запись через стек (и, собственно, призывал fellow programmers заниматься *этим* вместо той фигни, которая почему-то сейчас именутся 'программированием')?
Подробно пояснять где Столлман и прочие нарушили 'compatibility' могу, но зачем?
Это уведет нас в сторону от 'Ха-ха-ха'.
Re: И ничего смешного.
Date: 2002-08-18 04:13 am (UTC)И Дейкстра в этом 1000% прав. Ибо он был умный. И смотрел далеко. Кое в чем ошибался ( с прерываниями у него были ... нелюбовь ) но уж не в 'общей картине'.
Re: И ничего смешного.
Date: 2002-08-18 04:22 am (UTC)Постыдитесь хоть бред-то такой очевидный нести. Какое отношение декстопный стандард CDE имеет к написанию ядра операционной системы? Совсем ничего не понимаете?
Что же касается релевантных стандартов, то Линус изначально стремился к POSIX-compatibility, и повсюду открыто об этом заявлял. Так что опять промах.
В остальном примерно так же
Нет, именно что не так же.
Итак, что же такого смешного сказал нам Дейкстра,
За 30 лет, прошедших с тех пор, как были написани эти слова, роль совместимости с предыдущими системами, стандартами, интерфейсами, библиотеками, аппликациями, конвенциями и языками в программировании не уменьшилась, а возросла во много раз. Эту совместимость в наше время иногда принято считать хорошей, иногда плохой - в зависимости от идеологических, технических и философских предпочтений. В любом случае слова его сейчас, в 2002-м году, звучат в лучшем случае иронически.
Re: И ничего смешного.
Date: 2002-08-18 04:49 am (UTC)На мой взгляд, эта фраза Дейкстры вовсе не является ключевой в контексте его выступления. Просто ее выдрали из статьи и выдают за афоризм.
Если все-таки попытаться осмыслить это изречение как самоценную реплику, то наверно можно сказать, что Дейкстра нас учит правильно выбирать стандарты, которым надо соответствовать :)))
to avva: человек, видимо, не совсем в курсе положения дел. классический случай MS-центропупизма.
а про американского сумасшедшего - я думал, это про джобса :) но avva, видимо, угадал.
Re: И ничего смешного.
Кто действительно поклал на compatibility - это один французский плейбой лет шесть назад. И много он от этого выгадал?
no subject
Date: 2002-08-18 07:14 am (UTC)no subject
Date: 2002-08-18 11:56 am (UTC)Re: И ничего смешного.
Date: 2002-08-18 12:03 pm (UTC)Что же касается релевантных стандартов, то Линус изначально стремился к POSIX-compatibility, и повсюду открыто об этом заявлял. Так что опять промах
Понятно. Вы какое-то представление о том, как треды в линуксе реализованы - имеете? Поговорите как нибудь с человеком, который это представление имеет. Узнаете много интересного.
linux-то как раз кладет спокойно на 'compatibility' и 'legacy' (поговорите опять-таки с теми, кто знает чем 2.2 отличется от 'не 2.2').
Итого. Полуобразованный avva плюнул на могилу Дейкстры. В ответ на замечание, плюнул в того, кто ему сделал замечание.
Больше комментировать не буду. Смысла нет. 'Бред' ему 'очевидный'. Все-то он 'знает'.
Re:
Date: 2002-08-18 12:58 pm (UTC)Re: И ничего смешного.
Date: 2002-08-18 02:08 pm (UTC)Да. Я изучал это, когда участвовал в разработке FreeBSD, и BSDшники обсуждали линуксовский опыт, размышляя о том, как лучше перейти к хорошей SMP-поддержке и эффективным kernel threads.
linux-то как раз кладет спокойно на 'compatibility' и 'legacy' (поговорите опять-таки с теми, кто знает чем 2.2 отличется от 'не 2.2').
Вы просто не понимаете, какой бред несёте.
...плюнул на могилу Дейкстры...
И глупы к тому же.
А можно мне свои пять копеек вставить?... ;-)
Date: 2002-08-18 03:50 pm (UTC)Во-вторых, в 60-е годы вычислительная техника была нацелена в основном на решение математических задач, и всю проблему програмной совместимости можно, в принципе, свести к совместимости языков программирования на уровне кода, на объектном уровне, и вообщем-то всё. В то время и языков появилось больше, так как они были основным инструментом для решения основных же задач и шёл, можно сказать, процесс поиска оптимального. На сегодняшний день, ситуация в корне другая и сложнее на порядки.
Технология ушла в сторону от просто вычислений, мощности процессоров используются скорее как вспомогательный ресурс. Я не могу знать, предвидел ли Дейкстра такое развитие информационных технологий, но, если он имел в виду только языки программирования, то он прав, так как их совместимость тогда, и даже сейчас ничто по сравнению с проблемами совместимости протоколов, СУБД, форматов данных, юзер интерфейсов, аппаратуры наконец.
no subject
Re:
Date: 2002-08-18 10:45 pm (UTC)Да я не то чтобы наехал на него. Просто мне кажется, что сегодня очевидно, что его идеал не воплотился, да и не мог воплотиться в жизнь. Причин тому множество, лень их перечислять.
Мне импонирует подход Дейкстры, согласно которому нельзя зацикливаться на уже существующих системах и языках (в его случае это был Фортран, сегодня это будут - C, C++, Java, Unix, Windows и т.д. и т.п.), а вместо этого для конкретных задач надо использовать наиболее подходящие к ним инструменты, и не бояться новых языков и подходов. (обратите внимание, что Фортран 72-го года - не Фортран 2002-го, а как раз C++ и Java 2002-го). Но время показало, что этот подход просто нежизнеспособен на уровне всей софтверной community.
Re:
Date: 2002-08-19 03:48 am (UTC)А так, повторяю, согласен.
on compatibility
Date: 2002-08-19 03:49 am (UTC)