Re[5]: Синтаксический оверхед
От: ansi  
Дата: 17.06.05 09:56
Оценка:
Здравствуйте, Сергей Губанов, Вы писали:

СГ>Здравствуйте, Аноним, Вы писали:


А>> Бред... отлаживать такое крайне неудобно. Есть золотое правило: одна строчка — один оператор.


СГ>Не отлаживать программы надо, а математически строго доказывать их корректность.


А как ты докажешь их корректность мне интересно? Насколько я знаю, доказать корректность нельзя даже для
double max(double a, double b) {
   return a > b ? a : b;
}
new RSDN@Home(1.1.4, 303) << new Message(); std::head::ear << "Ice MC — Never stop believing";
Re[19]: Ошибка 3
От: Sinclair Россия https://github.com/evilguest/
Дата: 17.06.05 10:02
Оценка:
Здравствуйте, Centaur, Вы писали:
C>Есть предложение придать этому фильтру звание бритвы, по аналогии с бритвами Оккама и Хэнлона
А это что, простите мне мое невежество?

Насчет предложения — почти согласен. Принцип Эйнштейна несколько расширяет принцип Оккама, т.к. говорит не только о необходиомости простоты, но и о необходимости ее ограничивать. Так что это, пожалуй, ножницы Эйнштейна.
... << RSDN@Home 1.1.4 beta 5 rev. 395>>
Уйдемте отсюда, Румата! У вас слишком богатые погреба.
Re[6]: Синтаксический оверхед
От: Кодт Россия  
Дата: 17.06.05 10:14
Оценка:
Здравствуйте, ansi, Вы писали:

A>А как ты докажешь их корректность мне интересно? Насколько я знаю, доказать корректность нельзя даже для

A>double max(double a, double b) {
A>   return a > b ? a : b;
A>}

Почему нельзя?
Перекуём баги на фичи!
Re[20]: Ошибка 3
От: Кодт Россия  
Дата: 17.06.05 10:16
Оценка: 3 (1) :)))
Здравствуйте, Sinclair, Вы писали:

C>>Есть предложение придать этому фильтру звание бритвы, по аналогии с бритвами Оккама и Хэнлона

S>А это что, простите мне мое невежество?

Хэнлон: "Не усматривайте злого умысла в том, что вполне объяснимо глупостью".
Перекуём баги на фичи!
Re[7]: Синтаксический оверхед
От: ansi  
Дата: 17.06.05 12:02
Оценка:
Здравствуйте, Кодт, Вы писали:

К>Здравствуйте, ansi, Вы писали:


A>>А как ты докажешь их корректность мне интересно? Насколько я знаю, доказать корректность нельзя даже для

К>
A>>double max(double a, double b) {
A>>   return a > b ? a : b;
A>>}
К>

К>Почему нельзя?

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

Всего 2^(64 + 64) вариантов. Например, проверяем миллион тестов в секунду:

2^128 / 10^6  ==  10^128 * log10(2) / 10^6  >  10^38 / 10^6  ==  10^32 секунд  ~

~  10^32 / (60 * 60 * 24 * 365) лет  >  10^32 / 10^8  ==  10^24 лет.


Пример давался еще на лекциях первого курса... Ну оно конечно возможно, но оооочень-очень долго
new RSDN@Home(1.1.4, 303) << new Message(); std::head::ear << "Bryan Adams — All for love (with Rod Stewart and Sting)";
Re[8]: Синтаксический оверхед
От: Кодт Россия  
Дата: 17.06.05 12:15
Оценка: 3 (1) +1 :)
Здравствуйте, ansi, Вы писали:

A>Ну типа, чтоб доказать корректность, надо прогнать все возможные варианты.

A>Всего 2^(64 + 64) вариантов. Например, проверяем миллион тестов в секунду:
A>Пример давался еще на лекциях первого курса... Ну оно конечно возможно, но оооочень-очень долго

Интересно, а теорему Пифагора вы тоже проверяли? С какой дискретностью и в каких диапазонах?
Перекуём баги на фичи!
Re: Синтаксический оверхед
От: boomsic Россия  
Дата: 17.06.05 12:16
Оценка:
Здравствуйте, Сергей Губанов, Вы писали фигню



#define IF if(
#define THEN )
#define END ;


IF a THEN b END


вообщем как то на пустом (надуманом) месте спор...
ICQ 227964124
Re[2]: Синтаксический оверхед
От: moudrick Россия http://community.moudrick.net/
Дата: 17.06.05 12:18
Оценка:
B>#define IF if(
B>#define THEN )
B>#define END ;

define-ы не рулЯт.
Re[3]: Синтаксический оверхед
От: boomsic Россия  
Дата: 17.06.05 12:19
Оценка:
Здравствуйте, moudrick, Вы писали:


M>define-ы не рулЯт.


почему?
зато "Синтаксический оверхед" уменьшется в разы
ICQ 227964124
Re[4]: Синтаксический оверхед
От: moudrick Россия http://community.moudrick.net/
Дата: 17.06.05 12:26
Оценка: :)
Здравствуйте, boomsic, Вы писали:

B>Здравствуйте, moudrick, Вы писали:



M>>define-ы не рулЯт.

B>почему?
А вообще да... В обчных Сях (без плюсов) без define-ов никуда.

B>зато "Синтаксический оверхед" уменьшется в разы

(я прикинусь Сергеем Губановым на мнговение, только не убивайте сразу, ладно?)

#define — это директива препроцессора, если Вы помните.
То есть прежде чем отдавать текст на компиляцию, препроцессор заменяет в тексте все define-ы на их фактические значения.
Так что оверхед никуда не девается, он просто умело маскируется под свое отсутствие.
Re[8]: Синтаксический оверхед
От: Аноним  
Дата: 17.06.05 12:35
Оценка:
Здравствуйте, ansi, Вы писали:

A>Здравствуйте, Кодт, Вы писали:


К>>Здравствуйте, ansi, Вы писали:


А что — принцип индукции уже на работает ?
Re[5]: Синтаксический оверхед
От: boomsic Россия  
Дата: 17.06.05 12:37
Оценка:
Здравствуйте, moudrick, Вы писали:

M>Здравствуйте, boomsic, Вы писали:


B>>Здравствуйте, moudrick, Вы писали:



M>>>define-ы не рулЯт.

B>>почему?
M>А вообще да... В обчных Сях (без плюсов) без define-ов никуда.

B>>зато "Синтаксический оверхед" уменьшется в разы

M>(я прикинусь Сергеем Губановым на мнговение, только не убивайте сразу, ладно?)

M>#define — это директива препроцессора, если Вы помните.

M>То есть прежде чем отдавать текст на компиляцию, препроцессор заменяет в тексте все define-ы на их фактические значения.
M>Так что оверхед никуда не девается, он просто умело маскируется под свое отсутствие.


блин а я как то и не подумал...

я вот было подумал что уменьшение перерасхода строчек хорошо повлияет на распечатывание кода, типо меньше бумаги... но если важно чтобы и после раскрытия всех дефайнов было все без оверхедов...
ICQ 227964124
Re[9]: Синтаксический оверхед
От: ansi  
Дата: 17.06.05 12:38
Оценка:
Здравствуйте, Кодт, Вы писали:

К>Здравствуйте, ansi, Вы писали:


A>>Ну типа, чтоб доказать корректность, надо прогнать все возможные варианты.

A>>Всего 2^(64 + 64) вариантов. Например, проверяем миллион тестов в секунду:
A>>Пример давался еще на лекциях первого курса... Ну оно конечно возможно, но оооочень-очень долго

К>Интересно, а теорему Пифагора вы тоже проверяли? С какой дискретностью и в каких диапазонах?

К>

Ну это вообще как бы совсем другая песня... Одно дело теорема, другое — техническая реализация некоего алгоритма, корректность которого скорее всего можно доказать. Но вот как по-другому доказать корректность именно реализации?
new RSDN@Home(1.1.4, 303) << new Message(); std::head::ear << "Ice MC — Run fa cover";
Re[6]: Синтаксический оверхед
От: moudrick Россия http://community.moudrick.net/
Дата: 17.06.05 12:41
Оценка: -1 :))
M>>>>define-ы не рулЯт.

B>>>зато "Синтаксический оверхед" уменьшется в разы

M>>(я прикинусь Сергеем Губановым на мнговение, только не убивайте сразу, ладно?)

M>>#define — это директива препроцессора, если Вы помните.

M>>...
M>>Так что оверхед никуда не девается, он просто умело маскируется под свое отсутствие.

B>блин а я как то и не подумал...

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

А как же Вы думали? Несомненно! Не должно быть оверхеда ни на каком этапе трансляции программы — от UML или блок-схемы до бинарных машинных кодов! Не должно быть оверхеда даже в исходной модели! Иначе весь мир переподнится оверхедами!
Re[7]: Синтаксический оверхед
От: Hobot Bobot США  
Дата: 17.06.05 12:44
Оценка:
Здравствуйте, moudrick, Вы писали:


M>А как же Вы думали? Несомненно! Не должно быть оверхеда ни на каком этапе трансляции программы — от UML или блок-схемы до бинарных машинных кодов! Не должно быть оверхеда даже в исходной модели! Иначе весь мир переподнится оверхедами!


Сильно напоминает известную статью про перерасход GUID'ов.
What a piece of work is a man! how noble in reason! how infinite in faculty! in form and moving how express and admirable! in action how like an angel! in apprehension how like a god! the beauty of the world! the paragon of animals!
Re[10]: Синтаксический оверхед
От: anton_t Россия  
Дата: 17.06.05 12:46
Оценка:
Здравствуйте, ansi, Вы писали:

A>Ну это вообще как бы совсем другая песня... Одно дело теорема, другое — техническая реализация некоего алгоритма, корректность которого скорее всего можно доказать. Но вот как по-другому доказать корректность именно реализации?


Про верификацию программ слышал?
Re[8]: Синтаксический оверхед
От: moudrick Россия http://community.moudrick.net/
Дата: 17.06.05 12:49
Оценка:
M>>А как же Вы думали? Несомненно! Не должно быть оверхеда ни на каком этапе трансляции программы — от UML или блок-схемы до бинарных машинных кодов! Не должно быть оверхеда даже в исходной модели! Иначе весь мир переподнится оверхедами!

HB>Сильно напоминает известную статью про перерасход GUID'ов.


Известную а не известную?

Ссылку на статью — в студию!
Re[9]: Синтаксический оверхед
От: Hobot Bobot США  
Дата: 17.06.05 13:04
Оценка:
Здравствуйте, moudrick, Вы писали:

M>>>А как же Вы думали? Несомненно! Не должно быть оверхеда ни на каком этапе трансляции программы — от UML или блок-схемы до бинарных машинных кодов! Не должно быть оверхеда даже в исходной модели! Иначе весь мир переподнится оверхедами!


HB>>Сильно напоминает известную статью про перерасход GUID'ов.


M>Известную а не известную?


M>Ссылку на статью — в студию!


здесь
Автор(ы): Антон Злыгостев
Дата: 21.02.2003
What a piece of work is a man! how noble in reason! how infinite in faculty! in form and moving how express and admirable! in action how like an angel! in apprehension how like a god! the beauty of the world! the paragon of animals!
Re[9]: Синтаксический оверхед
От: Кодт Россия  
Дата: 17.06.05 13:04
Оценка:
Здравствуйте, moudrick, Вы писали:

M>Ссылку на статью — в студию!


http://gzip.rsdn.ru/article/mag/200301/GUIDEcology.xml
Автор(ы): Антон Злыгостев
Дата: 21.02.2003
Перекуём баги на фичи!
Re[11]: Синтаксический оверхед
От: ansi  
Дата: 17.06.05 13:35
Оценка:
Здравствуйте, anton_t, Вы писали:

_>Здравствуйте, ansi, Вы писали:


A>>Ну это вообще как бы совсем другая песня... Одно дело теорема, другое — техническая реализация некоего алгоритма, корректность которого скорее всего можно доказать. Но вот как по-другому доказать корректность именно реализации?


_>Про верификацию программ слышал?


Верификация ... нет, не слышал.
new RSDN@Home(1.1.4, 303) << new Message(); std::head::ear << "тссссссссс";
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.