DRAKON.SU

Текущее время: Пятница, 29 Март, 2024 00:42

Часовой пояс: UTC + 3 часа




Начать новую тему Ответить на тему  [ Сообщений: 163 ]  На страницу 1, 2, 3, 4, 5 ... 9  След.
Автор Сообщение
СообщениеДобавлено: Четверг, 26 Февраль, 2009 20:23 

Зарегистрирован: Воскресенье, 06 Апрель, 2008 14:43
Сообщения: 1657
У В.Д. Пароджанова в книге "Как улучшить работу ума" сказано следующее:

"Ортодоксальный метод Дейкстры, полностью запрещающий goto и заменители (см. с. 238, табл. 4, вариант 1), безусловно является строгим формальным методом. К сожалению, он полезен лишь как интересная теоретическая идея, которая, как показал всемирный опыт, в чистом виде оказалась непригодной для массового использования."

Т.е. специалисту предоставлено право осознанного выбора метода программирования.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Четверг, 26 Февраль, 2009 20:26 

Зарегистрирован: Воскресенье, 15 Февраль, 2009 09:47
Сообщения: 9
Геннадий Тышов писал(а):
У В.Д. Пароджанова в книге "Как улучшить работу ума" сказано следующее:

"Ортодоксальный метод Дейкстры, полностью запрещающий goto и заменители (см. с. 238, табл. 4, вариант 1), безусловно является строгим формальным методом. К сожалению, он полезен лишь как интересная теоретическая идея, которая, как показал всемирный опыт, в чистом виде оказалась непригодной для массового использования."

Т.е. специалисту предоставлено право осознанного выбора метода программирования.


Мне в таком праве отказывают. Наверное потому что не специалист :(


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Пятница, 27 Февраль, 2009 11:53 

Зарегистрирован: Пятница, 25 Ноябрь, 2005 12:02
Сообщения: 140
Откуда: Троицк, Москва
Геннадий Тышов писал(а):
... К сожалению, он полезен лишь как интересная теоретическая идея, которая, как показал всемирный опыт, в чистом виде оказалась непригодной для массового использования[/b]."

Увтерждение строго неверное, т.к. уже несет в себе произвольную интерпретацию.

Всемирный опыт показал, что цикл Дейкстры массово не используется через 30 лет после опубликования книги Дейкстры, это действительно факт. А вот что это означает и как объясняется -- вариантов больше одного.

Геннадий Тышов писал(а):
Т.е. специалисту предоставлено право осознанного выбора метода программирования.

Да. Свобода мнений есть, но это не значит, что все мнения равноценны.

А когда "ополченцы" гордо называются себя "специалистами", "профессионалами" и т.п., лично у меня скулы сводит.
(Разумеется, бывают и не-"ополченцы".)


Последний раз редактировалось Info21 Суббота, 28 Февраль, 2009 12:23, всего редактировалось 1 раз.

Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Пятница, 27 Февраль, 2009 19:53 

Зарегистрирован: Воскресенье, 06 Апрель, 2008 14:43
Сообщения: 1657
Info21 писал(а):
Да. Свобода мнений есть, но это не значит, что все мнения равноценны.

А когда "ополченцы" гордо называются себя "специалистами", "профессионалами" и т.п., лично у меня скулы сводит.
(Разумеется, бывают и не-"ополченцы".)

Фёдор Васильевич, я руководствуюсь мнением авторитетных людей, а так же имею некоторый производственный опыт.
Ранее, я позволил себе высказаться здесь.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Пятница, 27 Февраль, 2009 20:52 
Модератор
Аватара пользователя

Зарегистрирован: Понедельник, 14 Ноябрь, 2005 18:39
Сообщения: 631
Откуда: Россия, Орёл
Вообще, сама постановка вопроса "свобода - не свобода" очень странна. Хотя в ИТ сплошь и рядом она всплывает... Ввиду падения НТ-культуры - и в других областях. И мы незаметно к этому привыкаем.

Коллеги, ну задумайтесь на минутку: что за ракурс обсуждения? Вот в ВУЗы сейчас абитуриенты приходят и складывают дроби - числитель с числителем, знаменатель со знаменателем. Тоже свобода, зачем же её ограничивать :) Наше мин. обр. сказало бы "креативное мышление".

Если есть сомнения относительно каких-то артефактов программирования - единственный способ: подниматься на уровень выше (т.е. к математике) и смотреть - а осмысленен этот артефакт или нет.
И никаких рассуждений тогда о том "оставить goto или убрать" быть не может - с точки зрения, например, WP-метода Дейкстры.

(Но всё не так просто, т.к. мы поставим следующий вопрос - а та топология управления, которая предлагается классическим структурным программированием, является ли наиболее "свободной" из всех имеющих смысл при грамотном, доказательном программировании? Тут ответом будет "нет" - и как раз драконовская топология является более свободным случаем. Этому найдено теор. обоснование, но о нём пока не будем... Однако в линейном тексте, видимо, целесообразно ограничиться классической структурной топологией. Касательно break же - очевидно, что он не нарушает "осмысленные топологии", но является некоторым вырожденным случаем Дракон-схемы с неск. исходами из цикла. Он не позволяет выразить эти несколько исходов - они схлопываются в одной точке в конце, а потому зачем нужен - неясно. Поэтому break возникает тогда, когда человек не может грамотно вывести цикл из инварианта и пытается "склепать" его постепенно).

Вот так вот получается, а то всё "свобода - не свобода". Ужас.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Пятница, 27 Февраль, 2009 23:36 

Зарегистрирован: Пятница, 25 Ноябрь, 2005 12:02
Сообщения: 140
Откуда: Троицк, Москва
Геннадий Тышов писал(а):
Info21 писал(а):
Да. Свобода мнений есть, но это не значит, что все мнения равноценны.

А когда "ополченцы" гордо называются себя "специалистами", "профессионалами" и т.п., лично у меня скулы сводит.
(Разумеется, бывают и не-"ополченцы".)
Фёдор Васильевич, я руководствуюсь мнением авторитетных людей,
Непонятно, в чем именно Вы руководствуетесь мнением ...?

Что значит "авторитетные"? Для меня не бывает вообще авторитетных людей, а только в конкретных вопросах-темах. В данном случае, касательно цикла Дейкстры, известных мне авторитетов можно на пальцах одной руки перечесть. И добавлю, что понимаю вопрос достаточно глубоко (риску сказать, практически исчерпывающе), чтобы вообще не нуждаться в авторитетах для составления своего мнения по этому вопросу.

Геннадий Тышов писал(а):
а так же имею некоторый производственный опыт.
Никогда не подвергал это сомнению.

Геннадий Тышов писал(а):
Ранее, я позволил себе высказаться здесь.
Но там больше похоже на вопрос, чем на утверждение.

Впрочем, я тоже высказывался, с помощью цитаты из всё того же Шинкарева:
http://www.inr.ac.ru/~info21/blackbox/d ... lcome.html


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Воскресенье, 01 Март, 2009 07:33 

Зарегистрирован: Воскресенье, 06 Апрель, 2008 14:43
Сообщения: 1657
По вопросу применения goto у В.Д. Паронджанова в книге "Как улучшить работу ума" сказано следующее:

"Ортодоксальный метод Дейкстры, полностью запрещающий goto и заменители (см. с. 238, табл. 4, вариант 1), безусловно является строгим формальным методом. К сожалению, он полезен лишь как интересная теоретическая идея, которая, как показал всемирный опыт, в чистом виде оказалась непригодной для массового использования.

По мнению специалистов, “правила структурного программирования верны в 95%. Но остаются злополучные 5%” [20]. Чтобы поправить дело, решить проблему пяти процентов и создать метод, пригодный для широкой практики, пришлось пойти на компромисс и дать добро на использование заменителей и так называемое “ограниченное применение goto” (см. табл. 4, варианты 2—4). Благодаря этому проблема массовой практики программирования была решена. Но какой ценой? Ценой отказа от строгого формализма.

Отсюда вытекает, что решение о списке случаев, когда нужно или не нужно употреблять перечисленные операторы, предоставляется программисту, который будет действовать, возможно, из лучших побуждений, но в соответствии со своим личным опытом и пристрастиями. Таким образом, о строгой формализации в данном случае речь идти не может."

Отсюда и личное убеждение того, что: "Специалисту предоставлено право осознанного выбора метода программирования."
Осознанное использование goto является более эргономичным решением, чем ортодоксальное следование правилам структурного программирования.

Info21 писал(а):
Впрочем, я тоже высказывался, с помощью цитаты из всё того же Шинкарева:
http://www.inr.ac.ru/~info21/blackbox/d ... lcome.html

Фёдор Васильевич, ваши высказывания по ссылке можно воспринять как проявление "интеллектуального терроризма". Термин "интеллектуальный терроризм" и его определение введен В.Д. Паронджановым в книге "Как улучшить работу ума".


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Воскресенье, 01 Март, 2009 10:04 
Модератор
Аватара пользователя

Зарегистрирован: Понедельник, 14 Ноябрь, 2005 18:39
Сообщения: 631
Откуда: Россия, Орёл
Уважаемый Геннадий, Паронджанов в своей книжке совершенно прав. Только отношения к goto эта правота не имеет никакого. Как обстоят дела на самом деле, я написал сообщением выше.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Воскресенье, 01 Март, 2009 10:11 

Зарегистрирован: Понедельник, 05 Июнь, 2006 09:49
Сообщения: 28
Откуда: Ленинград, Емельянов Алексей Николаевич
Ну что-же, если это http://www.inr.ac.ru/~info21/blackbox/d ... lcome.html "интеллектуальный терроризм", то тогда "ДА ЗДРАВСТВУЕТ ТЕРРОР"


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Воскресенье, 01 Март, 2009 10:12 
Модератор
Аватара пользователя

Зарегистрирован: Понедельник, 14 Ноябрь, 2005 18:39
Сообщения: 631
Откуда: Россия, Орёл
Геннадий Тышов писал(а):
Отсюда и личное убеждение того, что: "Специалисту предоставлено право осознанного выбора метода программирования."
Осознанное использование goto является более эргономичным решением, чем ортодоксальное следование правилам структурного программирования.


(Очень мало, увы, специалистов в массовом ИТ понимают суть дела достаточно глубоко, чтобы ОСОЗНАННО, а не методом тыка, "по наитию" или "по моде" выбирать метод программирования... Инструменты широкого применения должны задавать эталон, ориентировать мозги в нужном направлении...)

Осознанное использование goto возможно только для случая, когда требуется более свободная структурная топология, чем классическая (линейно вложенные блоки). Можно сказать, "Дракон-топология", т.к. самая общая осмысленная для алгоритма топология оказывается только немного свободней Дракона.
В других случаях (например, goto назад по тексту) просто не имеет смысла, он является признаком ошибочного составления программы.
С другой стороны, "культурные" ситуации с goto (конкретно можно сказать - перевод Дракон-схемы на тот же Паскаль) можно обойти, просто вводя вложенные процедуры для определённых фрагментов Дракон-схемы. Стоит ли оставлять в языке спички для детей, если небольшое количество особых случаев решим и без них (спичек)? А перейдём на двумерное программирование - и проблема вообще отпадёт.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Воскресенье, 01 Март, 2009 11:52 

Зарегистрирован: Пятница, 25 Ноябрь, 2005 12:02
Сообщения: 140
Откуда: Троицк, Москва
Геннадий Тышов писал(а):
По вопросу применения goto у В.Д. Паронджанова в книге "Как улучшить работу ума" сказано следующее: ...


Геннадий (извините, не вижу нигде отчества, это "не взаимно"):

Строгость метода Дейкстры не противоречит его практичности. Просто "специалисты", на которых Вы ссылаетесь, "не умеют его готовить" (С).

Тут имеет всеобщее заблуждение, видное и при (не)использовании аккуратных методов того же матана (там тоже проблема: курсы построены так, что народ, уча его на первом курсе, просто не успевает въехать в то, "как его готовить"; речь не о рецептах дифференцирования-интегрирования, а о чуть более тонких "строгих" вещах).
Кроме того, у меня со временем укрепляется на основавнии опыта убеждение, что на самом деле четкое уверенное владение эффективной техникой программирования "в малом" -- вещь очень редкая даже среди "специалистов".

Я просто делаю это утверждение, а разжевываю этот вопрос в лекция. Переписывать сюда просто нереально.

"Специалистов" ставлю в кавычки, потому что цифры 95% и 5% сильно неправильные -- ведь даже специалист по встроенному RT будет помнить, что есть огромный мир всякого другого.

А называть требование хорошей обученности "интеллектуальным терроризмом" -- на мой взгляд просто нелепо.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Воскресенье, 01 Март, 2009 13:27 

Зарегистрирован: Воскресенье, 15 Февраль, 2009 09:47
Сообщения: 9
Геннадий Тышов писал(а):
Т.е. специалисту предоставлено право осознанного выбора метода программирования.

Да. Свобода мнений есть, но это не значит, что все мнения равноценны.

А когда "ополченцы" гордо называются себя "специалистами", "профессионалами" и т.п., лично у меня скулы сводит.
(Разумеется, бывают и не-"ополченцы".)


А какие могут быть критерии оценки равноценности мнений? Попахивает цензурой и инквизицией.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Воскресенье, 01 Март, 2009 13:41 
Модератор
Аватара пользователя

Зарегистрирован: Понедельник, 14 Ноябрь, 2005 18:39
Сообщения: 631
Откуда: Россия, Орёл
Вообще-то, в точных дисциплинах (ф.-м. науках и инженерии) во все времена такими критериями было хотя бы одно из двух: а) глубина понимания вопроса на теор. уровне; б) богатство практического опыта.
Естественно, что чем больше а) и/или б) стоит за мнением, тем оно ценнее само по себе, до отдельного его рассмотрения и проверки.

Странно, что какая-то политика привносится в профессиональную сферу. Это может говорить только о том, что деградирует сфера эта, уважаемые коллеги... Постмодерн какой-то. Раньше спорили о том, искусство или нет - "чёрный квадрат". Ну, пусть себе спорят, если хочецца... Но теперь такие же споры в точных отраслях пошли... Ужас.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Воскресенье, 01 Март, 2009 13:50 

Зарегистрирован: Воскресенье, 15 Февраль, 2009 09:47
Сообщения: 9
Илья Ермаков писал(а):
Вообще-то, в точных дисциплинах (ф.-м. науках и инженерии) во все времена такими критериями было хотя бы одно из двух: а) глубина понимания вопроса на теор. уровне; б) богатство практического опыта.
Естественно, что чем больше а) и/или б) стоит за мнением, тем оно ценнее само по себе, до отдельного его рассмотрения и проверки.

Странно, что какая-то политика привносится в профессиональную сферу. Это может говорить только о том, что деградирует сфера эта, уважаемые коллеги... Постмодерн какой-то. Раньше спорили о том, искусство или нет - "чёрный квадрат". Ну, пусть себе спорят, если хочецца... Но теперь такие же споры в точных отраслях пошли... Ужас.


Ага, так и объясняли Джордано Бруно, пока послушники вокруг него хворост раскладывали :).


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Воскресенье, 01 Март, 2009 13:55 
Модератор
Аватара пользователя

Зарегистрирован: Понедельник, 14 Ноябрь, 2005 18:39
Сообщения: 631
Откуда: Россия, Орёл
Ну да, ссылки на Джордано Бруно вообще обожают разные псевдо-учёные.
Я же говорю, не тащите в профессиональную сферу политику-идеологию :) (благое пожелание, на самом деле обычно трудновыполнимое...)

Практическое программирование же является настолько конкретной (и довольно тривиальной) проекцией математики, что попытки "научных споров" на его уровне, без подъёма выше, - это просто детский сад.
Так что касательно ценности: какую ценность может иметь высказанное на уровне частного случая суждение, если исчерпывающий ответ уже давно "даден" на более абстрактном уровне?

P.S. Я имею в виду "практическое программирование" в малом-среднем, конечно. Ибо в случае более крупных систем это становится не только проекцией математики, но и отраслью инженерно-конструкторского дела, там добавляются свои закономерности, безусловно...


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Воскресенье, 01 Март, 2009 14:15 

Зарегистрирован: Воскресенье, 15 Февраль, 2009 09:47
Сообщения: 9
Илья Ермаков писал(а):
Ну да, ссылки на Джордано Бруно вообще обожают разные псевдо-учёные.
Я же говорю, не тащите в профессиональную сферу политику-идеологию :) (благое пожелание, на самом деле обычно трудновыполнимое...)

Практическое программирование же является настолько конкретной (и довольно тривиальной) проекцией математики, что попытки "научных споров" на его уровне, без подъёма выше, - это просто детский сад.
Так что касательно ценности: какую ценность может иметь высказанное на уровне частного случая суждение, если исчерпывающий ответ уже давно "даден" на более абстрактном уровне?

P.S. Я имею в виду "практическое программирование" в малом-среднем, конечно. Ибо в случае более крупных систем это становится не только проекцией математики, но и отраслью инженерно-конструкторского дела, там добавляются свои закономерности, безусловно...


Я никогда не говорил, что я ученый или специалист, за то очень часто упоминал, что любитель и начинающий :).
Но как быть с логикой? Одни говорят, что плохо, но с другой стороны эти явления живут и развиваются. Бейсик не умер, как ни странно (я не имею ввиду Visual Basic), по прежнему пишутся компиляторы для него :).
Смысл в том, чтобы не запрещать. Объяснить как лучше, да согласен. Но не значит, что надо отрезать все остальное. Так как есть те самые 5%, которые решаются иными способами. Ведь я же не против структурного программирования, я против того, что нет других способов написания программ. Идеального языка не существует, иначе только он один бы и существовал.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Воскресенье, 01 Март, 2009 14:25 
Модератор
Аватара пользователя

Зарегистрирован: Понедельник, 14 Ноябрь, 2005 18:39
Сообщения: 631
Откуда: Россия, Орёл
utkin писал(а):
Но как быть с логикой? Одни говорят, что плохо, но с другой стороны эти явления живут и развиваются. Бейсик не умер, как ни странно (я не имею ввиду Visual Basic), по прежнему пишутся компиляторы для него :).

Так эта... Есть такое понятие, как бизнес :) Выгодно, вот и развивают. Отрасль в 90-е сильно деградировала, в связи с приходом ПК и масс необученных (но часто очень энергично-увлечённых :) ) людей. А те, кто правил бал персоналок (Microsoft...), высокомерно предпочли кормить людей тем, "что хавается", а не поднимать культуру программирования.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Воскресенье, 01 Март, 2009 14:33 

Зарегистрирован: Пятница, 25 Ноябрь, 2005 12:02
Сообщения: 140
Откуда: Троицк, Москва
utkin писал(а):
А какие могут быть критерии оценки равноценности мнений? Попахивает цензурой и инквизицией.
Скажите это тем, кто ищет себе сотрудников.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Воскресенье, 01 Март, 2009 14:39 
Модератор
Аватара пользователя

Зарегистрирован: Понедельник, 14 Ноябрь, 2005 18:39
Сообщения: 631
Откуда: Россия, Орёл
utkin писал(а):
Смысл в том, чтобы не запрещать. Объяснить как лучше, да согласен. Но не значит, что надо отрезать все остальное.

А как Вы представляете "запрещать"? )) Чем, как не объяснением, предлагается заниматься?

Вот, например, на авторе любого языка лежит ответственность донести это объяснения - просто путём качественного дизайна языка, подсвечивания того, "что такое хорошо", и исключения того, что безусловно плохо (вместо подхода "они же привыкли, давайте включим, а то страдать будут...").

Вот Вам не нравятся типы. Хорошо - это мнение, некий подход. Который можно обсуждать. Но принцип "как можно большее число проверок правильности со стороны машины на как можно раннем этапе" - железобетонный. Таким образом, Вы уже должны для себя решать, как ему удовлетворить без явной типизации. Либо, если Вы идёте на осознанное понижение надёжности, то должны чётко сформулировать те преимущества, которые покупаются этой ценой, и сто раз подумать, а нельзя ли их получить другой ценой...
Что-то типа такого хода мыслей.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Воскресенье, 01 Март, 2009 14:40 

Зарегистрирован: Воскресенье, 15 Февраль, 2009 09:47
Сообщения: 9
Илья Ермаков писал(а):
utkin писал(а):
Но как быть с логикой? Одни говорят, что плохо, но с другой стороны эти явления живут и развиваются. Бейсик не умер, как ни странно (я не имею ввиду Visual Basic), по прежнему пишутся компиляторы для него :).

Так эта... Есть такое понятие, как бизнес :) Выгодно, вот и развивают. Отрасль в 90-е сильно деградировала, в связи с приходом ПК и масс необученных (но часто очень энергично-увлечённых :) ) людей. А те, кто правил бал персоналок (Microsoft...), высокомерно предпочли кормить людей тем, "что хавается", а не поднимать культуру программирования.


Но я как раз не про Visual Basic. Есть и другие и даже кроссплатформенные.


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 163 ]  На страницу 1, 2, 3, 4, 5 ... 9  След.

Часовой пояс: UTC + 3 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 2


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
cron
Вся информация, размещаемая участниками на конференции (тексты сообщений, вложения и пр.) © 2008-2024, участники конференции «DRAKON.SU», если специально не оговорено иное.
Администрация не несет ответственности за мнения, стиль и достоверность высказываний участников, равно как и за безопасность материалов, предоставляемых участниками во вложениях.
Powered by phpBB® Forum Software © phpBB Group
Русская поддержка phpBB