The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]



Вариант для распечатки  
Пред. тема | След. тема 
Форум Разговоры, обсуждение новостей
Режим отображения отдельной подветви беседы [ Отслеживать ]

Оглавление

Атака по захвату кошельков Electrum через zero-day уязвимост..., opennews (??), 15-Фев-18, (0) [смотреть все]

Сообщения [Сортировка по времени | RSS]


3. "Атака по захвату кошельков Electrum через zero-day уязвимост..."  +13 +/
Сообщение от A.Stahl (ok), 15-Фев-18, 12:15 
В своё время была истерия по поводу goto в результате которой про эту команду уже не каждый программист и знает-то иначе кроме как из анекдотов.
Может стоит среди скриптовиков поднять такую же бучу по поводу eval?
Ответить | Правка | Наверх | Cообщить модератору

17. "Атака по захвату кошельков Electrum через zero-day уязвимост..."  –9 +/
Сообщение от pavlinux (ok), 15-Фев-18, 14:01 
>  goto в результате которой про эту команду уже не каждый программист и знает-то

Это копипастакодеры, а не программисты.

Ответить | Правка | Наверх | Cообщить модератору

38. "Атака по захвату кошельков Electrum через zero-day уязвимост..."  +2 +/
Сообщение от eganru (?), 15-Фев-18, 17:09 

...
__label__ exit;

for(u32 foo = HUGE; foo; --foo){
    for(u32 bar = HUGE2; bar; --bar){
        if(unlikely(cond(bar)){
            foobar(foo, bar);
            goto exit;
        }
    }
}
exit:
...


Ответить | Правка | К родителю #3 | Наверх | Cообщить модератору

41. "Атака по захвату кошельков Electrum через zero-day уязвимост..."  +5 +/
Сообщение от A.Stahl (ok), 15-Фев-18, 17:25 
И?
Ответить | Правка | Наверх | Cообщить модератору

71. "Атака по захвату кошельков Electrum через zero-day уязвимост..."  +2 +/
Сообщение от Аноним (-), 15-Фев-18, 22:30 
Вложенный цикл лучше в отдельную функцию выделить, и goto станет не нужен.
Ответить | Правка | К родителю #38 | Наверх | Cообщить модератору

77. "Атака по захвату кошельков Electrum через zero-day уязвимост..."  +1 +/
Сообщение от eganru (?), 16-Фев-18, 00:15 
[i]лучше в отдельную функцию выделить[/i] - и это будет яркий пример костыля(лишь бы не использовать goto). и дело не только в затруднении читаемости кода на ровном месте.

ясное есть языки без goto. и ничего.

я последние годы пишу на С и asm. в воображаемом мире пугливые розовые единороги решают все свои проблемы избежанием goto.
в реальном мире есть куча куда как более глубоких логических промахов, с которыми не всегда ясно, что вообще делать.

Ответить | Правка | Наверх | Cообщить модератору

82. "Атака по захвату кошельков Electrum через zero-day уязвимост..."  –4 +/
Сообщение от iPony (?), 16-Фев-18, 05:58 
> в воображаемом мире пугливые розовые единороги решают все свои проблемы избежанием goto.

Кстати про единорогов... Правильность кода - это не пустые слова.
Можешь хоть сколько смеяться, но когда вот такое <CENSORED> пишут не для чисто своей подделки, то за это надо бить томиком чего-нибудь этакого фундаментального по голове.

Ответить | Правка | Наверх | Cообщить модератору

87. "Атака по захвату кошельков Electrum через zero-day уязвимост..."  +/
Сообщение от eganru (?), 16-Фев-18, 08:32 
[i]этакого фундаментального по голове[/i] - я неоднократно видел как куски <CENSORED> своими фундаментальными томами вгоняли в гроб трезвые идеи.

по поводу goto - можете к слову полезть поспорить к Adam Dunkels с его protothreads (c labels as values). рассказать ему как Вы круто все знаете.

*впрочем спорить не намерен. ясное дело что в своих кодах Вы можете делать что хотите.

Ответить | Правка | Наверх | Cообщить модератору

83. "Атака по захвату кошельков Electrum через zero-day уязвимост..."  +/
Сообщение от iPony (?), 16-Фев-18, 05:59 
PS: https://twitter.com/Code_Analysis/status/963450814059696129
Ответить | Правка | К родителю #77 | Наверх | Cообщить модератору

113. "Атака по захвату кошельков Electrum через zero-day уязвимост..."  +/
Сообщение от anomymous (?), 17-Фев-18, 12:55 
> Вложенный цикл лучше в отдельную функцию выделить, и goto станет не нужен.

Даёшь каждому циклу по функции. А лучше - по целому классу.
... о времена, о нравы ...

Ответить | Правка | К родителю #71 | Наверх | Cообщить модератору

80. "Атака по захвату кошельков Electrum через zero-day уязвимост..."  +/
Сообщение от Аноним (-), 16-Фев-18, 02:30 
...
bool cancel = false;
for(u32 foo = HUGE; foo && !cancel; --foo){
    for(u32 bar = HUGE2; bar && !cancel; --bar){
        if(unlikely(cond(bar)){
            foobar(foo, bar);
            cancel = true;
        }
    }
}
...
Ответить | Правка | К родителю #38 | Наверх | Cообщить модератору

88. "Атака по захвату кошельков Electrum через zero-day уязвимост..."  +1 +/
Сообщение от mickvavemail (?), 16-Фев-18, 09:26 
По производительности уступает варианту с goto. Всё в функцию и return - это да.
Ответить | Правка | Наверх | Cообщить модератору

90. "Атака по захвату кошельков Electrum через zero-day уязвимост..."  +/
Сообщение от eganru (?), 16-Фев-18, 11:12 
на создание дополнительной функции должны быть серьезные аргументы.

добавит ли в таком случае функция ясности? точно нет. зачем тогда кого-то этим всем путать?

Ответить | Правка | Наверх | Cообщить модератору

104. "Атака по захвату кошельков Electrum через zero-day уязвимост..."  +/
Сообщение от А (??), 16-Фев-18, 23:13 
> на создание дополнительной функции должны быть серьезные аргументы.
> добавит ли в таком случае функция ясности? точно нет. зачем тогда кого-то
> этим всем путать?

Конечно. Гораздо же лучше одна функция на тысячи две строк и с кучей вложенных друг в друга циклов. С массой goto в произвольные места. Печатаешь потом такую <censored>, прибиваешь распечатку на стену от потолка до пола и разноцветными маркерами размечаешь начала и окончания разных вложенных друг в друга циклов. Очень эффективный метод изучения того что же это <censored> делает. Прежде чем его выбросить в мусор, заменив на обозримый и читабельный код...

Ответить | Правка | Наверх | Cообщить модератору

109. "Атака по захвату кошельков Electrum через zero-day уязвимост..."  +/
Сообщение от eganru (?), 17-Фев-18, 08:58 
[i]Гораздо же лучше одна функция на тысячи две строк[/i] - это Вы написали. Я этого не утверждал и у меня есть основания полагать, что функция по длине не должна занимать более 2 страниц.
На что, в общем-то в каждом случае есть свои стандарты написания кода.

Бессмысленные обертки только добавляют путаницы.

[i]разноцветными маркерами размечаешь начала и окончания разных вложенных друг в друга циклов[/i] - это Ваш опыт. у меня к счастью такого опыта нет.

Ответить | Правка | Наверх | Cообщить модератору

115. "Атака по захвату кошельков Electrum через zero-day уязвимост..."  +/
Сообщение от anomymous (?), 17-Фев-18, 12:56 
> Конечно. Гораздо же лучше одна функция на тысячи две строк и с
> кучей вложенных друг в друга циклов. С массой goto в произвольные
> места. Печатаешь потом такую <censored>, прибиваешь распечатку на стену от потолка

В ядре Linux полно таких goto. И ничего - всё нормально.

Ответить | Правка | К родителю #104 | Наверх | Cообщить модератору

122. "Атака по захвату кошельков Electrum через zero-day уязвимост..."  +/
Сообщение от Anonymoustus (ok), 17-Фев-18, 19:02 
>> Конечно. Гораздо же лучше одна функция на тысячи две строк и с
>> кучей вложенных друг в друга циклов. С массой goto в произвольные
>> места. Печатаешь потом такую <censored>, прибиваешь распечатку на стену от потолка
> В ядре Linux полно таких goto. И ничего - всё нормально.

Так это твоих рук дело, аноним? Приберись там, негоже оставлять после себя мусор и позорить хакиров 5-го «Б» на всё ядро.

Ответить | Правка | Наверх | Cообщить модератору

127. "Атака по захвату кошельков Electrum через zero-day уязвимост..."  +/
Сообщение от Аноним (-), 18-Фев-18, 17:09 
> Так это твоих рук дело, аноним? Приберись там, негоже оставлять после себя
> мусор и позорить хакиров 5-го «Б» на всё ядро.

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

Ответить | Правка | Наверх | Cообщить модератору

134. "Атака по захвату кошельков Electrum через zero-day уязвимост..."  +/
Сообщение от Anonymoustus (ok), 18-Фев-18, 20:31 
> Таки goto обычное дело в обработке ошибок. Потому что если все профакапилось,
> вложенными циклами не отвертишься, знаешь ли.

Уговорил.

Ответить | Правка | Наверх | Cообщить модератору

114. "Атака по захвату кошельков Electrum через zero-day уязвимост..."  +/
Сообщение от anomymous (?), 17-Фев-18, 12:56 
>[оверквотинг удален]
>     for(u32 bar = HUGE2; bar && !cancel; --bar){
>         if(unlikely(cond(bar)){
>            
> foobar(foo, bar);
>            
> cancel = true;
>         }
>     }
> }
> ...

Сами догадаетесь, почему этот метод является ущербным?

Ответить | Правка | К родителю #80 | Наверх | Cообщить модератору

119. "Атака по захвату кошельков Electrum через zero-day уязвимост..."  +/
Сообщение от Аноним (-), 17-Фев-18, 15:59 
for(u32 foo = HUGE; foo; --foo){
    for(u32 bar = HUGE2; bar; --bar){
        if(unlikely(cond(bar)){
            foobar(foo, bar);
            foo = 0;
            break;
        }
    }
}
Ответить | Правка | К родителю #38 | Наверх | Cообщить модератору

140. "Атака по захвату кошельков Electrum через zero-day уязвимост..."  +/
Сообщение от Аноним (-), 21-Фев-18, 12:29 
> foo = 0;

классический костыль. руки отрывать.

Ответить | Правка | Наверх | Cообщить модератору

58. "Атака по захвату кошельков Electrum через zero-day уязвимост..."  +2 +/
Сообщение от adolfus (ok), 15-Фев-18, 19:19 
GOTO -- нормальная команда. Без нее нет жизни. Для выскочить из вложенного цикла при синтаксическом разборе вообще нет альтернативы. Везде, где использование GOTO дает выигрыш в ясности и производительности, его нужно использовать.
Ответить | Правка | К родителю #3 | Наверх | Cообщить модератору

60. "Атака по захвату кошельков Electrum через zero-day уязвимост..."  –1 +/
Сообщение от A.Stahl (ok), 15-Фев-18, 19:41 
Ты забыл сообщить нам что вода мокрая и у квадрата целых 4 прямых угла.
Ответить | Правка | Наверх | Cообщить модератору

66. "Атака по захвату кошельков Electrum через zero-day уязвимост..."  +1 +/
Сообщение от Аноним (-), 15-Фев-18, 20:59 
> вложенного цикла

А нечего вложенные циклы лепить. Функциональщики и вовсе без них как-то живут, и ниче.

Ответить | Правка | К родителю #58 | Наверх | Cообщить модератору

69. "Атака по захвату кошельков Electrum через zero-day уязвимост..."  –4 +/
Сообщение от Аноним (-), 15-Фев-18, 22:20 
Функциональщики и прочие маргиналы неплохо обходятся и без программирования вообще - пишут полторы хрени на всю планету, которые погоду не делают. А чтобы страдать этим - используют софт и операционки писаные на чем-нибудь "менее функциональном" и все такое.

С питонистами тоже прикольно вышло. Они так на пхп пшикали, а оказалось что от пхпшников отличаются только названием своего фетиша.

Ответить | Правка | Наверх | Cообщить модератору

141. "Атака по захвату кошельков Electrum через zero-day уязвимост..."  +/
Сообщение от Аноним (-), 21-Фев-18, 12:30 
> Функциональщики и вовсе без них как-то живут

У функциональщиков есть лямбды

Ответить | Правка | К родителю #66 | Наверх | Cообщить модератору

89. "Атака по захвату кошельков Electrum через zero-day уязвимост..."  –1 +/
Сообщение от mickvavemail (?), 16-Фев-18, 09:29 
> GOTO -- нормальная команда. Без нее нет жизни. Для выскочить из вложенного
> цикла при синтаксическом разборе вообще нет альтернативы. Везде, где использование GOTO
> дает выигрыш в ясности и производительности, его нужно использовать.

Если синтаксический разбор делать yacc-ом, то все goto он создаст сам, а в коде на нём уже никакие goto не нужны. Как следствие - исходный код чист, но не совсем на C ;)

Ответить | Правка | К родителю #58 | Наверх | Cообщить модератору

84. "Атака по захвату кошельков Electrum через zero-day уязвимост..."  –2 +/
Сообщение от Онаним (?), 16-Фев-18, 06:09 
Согласен. В школьные годы всегда считал, что в каждом нормальном языке должна быть возможность загрузить код на нём из строки, и GOTO мне нравилась, но только чуть подрос - сразу понял, что и то и то - зло.
Ответить | Правка | К родителю #3 | Наверх | Cообщить модератору

123. "Атака по захвату кошельков Electrum через zero-day уязвимост..."  +1 +/
Сообщение от Аноним (-), 17-Фев-18, 20:31 
> но только чуть подрос - сразу понял

Насколько "чуть"? Полгода хотя бы прошло?

Ответить | Правка | Наверх | Cообщить модератору

96. "Атака по захвату кошельков Electrum через zero-day уязвимост..."  +1 +/
Сообщение от Аноним (-), 16-Фев-18, 14:37 
Про ассемблерный JMP такой бучи не было
Ответить | Правка | К родителю #3 | Наверх | Cообщить модератору

116. "Атака по захвату кошельков Electrum через zero-day уязвимост..."  +/
Сообщение от anomymous (?), 17-Фев-18, 12:57 
> Про ассемблерный JMP такой бучи не было

Вот да, только хотел предложить убрать JMP и оформлять всё CALL/RET'ами.

Ответить | Правка | Наверх | Cообщить модератору

Архив | Удалить

Рекомендовать для помещения в FAQ | Индекс форумов | Темы | Пред. тема | След. тема




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру