1. Комментарий к говнокоду #23798

    • совершенно верно

      потому call/ret это вообще плохо, цари инлайнят функции
      Ответить
    Показать код ▼

    PHP / Говнокод #23798

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    13. 13
    14. 14
    15. 15
    // http://www.compiler.su/prodolzhenie-tsikla-i-vykhod-iz-nego.php
    // В PHP выход из вложенного цикла выглядит, на мой взгляд, значительно элегантнее. После «break» указывается количество вложенных циклов, которые должен «покинуть» оператор «break». В приведённом примере, который аналогичен приведённому выше для Java, «break» должен «пересечь» две фигурные скобки «}», чтобы оказаться за пределами двух циклов.
     
    for($i=0; $i < $Imax; ++$i)
    {
       // ...
       for($j=0; $j < $Jmax; ++$j)
       {
          // ...
          if(условие) 
              break 2;
          // ...
       }
       // ...
    }

    Интересно, а почему б нечто подобное не сделать для функций? Ну например есть функция a() которая вызывает функцию b() которая вызывает функцию c(), которая вызывает функцию d(), и например в функции d() чтоб сделать особый return_3, который бы вернул управление на три уровня вниз, сразу в функцию a()? Хотя не, хуйня, надо ведь еще знать, какой там тип возвращается в функцию a() из функции b().
    То ли дело ассемблер. Можно тупо отмотать стек в нужное место

    Запостил: j123123, 16 Февраля 2018

    Все комментарии (62)
  2. Комментарий к говнокоду #23802

    • >>Я видел некоторое дерьмо
      не сомневаюсь, у тебя же есть зеракло, и родителей своих ты тоже видел
      Ответить
    Показать код ▼

    C++ / Говнокод #23802

    1. 1
    return f() <= x->size() ? true:false;

    Классика?

    Запостил: syoma, 20 Февраля 2018

    Все комментарии (57)
  3. Комментарий к говнокоду #21772

    • ну в аутпуте же:
      >> (from versions: )

      вот как выглядит нормальный список версий
      $ pip install django==1234234
      Collecting django==1234234
        Could not find a version that satisfies the requirement django==1234234 (from versions: 1.1.3, 1.1.4, 1.2, 1.2.1, 1.2.2, 1.2.3, 1.2.4, 1.2.5, 1.2.6, 1.2.7, 1.3, 1.3.1, 1.3.2
      , 1.3.3, 1.3.4, 1.3.5, 1.3.6, 1.3.7, 1.4, 1.4.1, 1.4.2, 1.4.3, 1.4.4, 1.4.5, 1.4.6, 1.4.7, 1.4.8, 1.4.9, 1.4.10, 1.4.11, 1.4.12, 1.4.13, 1.4.14, 1.4.15, 1.4.16, 1.4.17, 1.4.18
      , 1.4.19, 1.4.20, 1.4.21, 1.4.22, 1.5, 1.5.1, 1.5.2, 1.5.3, 1.5.4, 1.5.5, 1.5.6, 1.5.7, 1.5.8, 1.5.9, 1.5.10, 1.5.11, 1.5.12, 1.6, 1.6.1, 1.6.2, 1.6.3, 1.6.4, 1.6.5, 1.6.6, 1.
      6.7, 1.6.8, 1.6.9, 1.6.10, 1.6.11, 1.7, 1.7.1, 1.7.2, 1.7.3, 1.7.4, 1.7.5, 1.7.6, 1.7.7, 1.7.8, 1.7.9, 1.7.10, 1.7.11, 1.8a1, 1.8b1, 1.8b2, 1.8rc1, 1.8, 1.8.1, 1.8.2, 1.8.3, 1
      .8.4, 1.8.5, 1.8.6, 1.8.7, 1.8.8, 1.8.9, 1.8.10, 1.8.11, 1.8.12, 1.8.13, 1.8.14, 1.8.15, 1.8.16, 1.8.17, 1.8.18, 1.9a1, 1.9b1, 1.9rc1, 1.9rc2, 1.9, 1.9.1, 1.9.2, 1.9.3, 1.9.4,
       1.9.5, 1.9.6, 1.9.7, 1.9.8, 1.9.9, 1.9.10, 1.9.11, 1.9.12, 1.9.13, 1.10a1, 1.10b1, 1.10rc1, 1.10, 1.10.1, 1.10.2, 1.10.3, 1.10.4, 1.10.5, 1.10.6, 1.10.7, 1.10.8, 1.11a1, 1.11
      b1, 1.11rc1, 1.11, 1.11.1, 1.11.2, 1.11.3, 1.11.4, 1.11.5, 1.11.6, 1.11.7, 1.11.8, 1.11.9, 1.11.10)
      No matching distribution found for django==1234234
      Ответить
    Показать код ▼

    Куча / Говнокод #21772

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    IT Оффтоп #5
     
    #1: http://govnokod.ru/18142
    #2: http://govnokod.ru/18378
    #3: http://govnokod.ru/19667
    #4: http://govnokod.ru/21160

    Запостил: 3_14dar, 03 Декабря 2016

    Все комментарии (615)
  4. Комментарий к говнокоду #23813

    • var foo = Int32.MaxValue;
      foo++;
      Console.Write(foo);

      -2147483648

      Так что прекрасный случился перехлест, все эти ваши хваленые высокуровневые копеляторы пропустили такую глупую ошибку
      ахахаха
      Ответить
    Показать код ▼

    C# / Говнокод #23813

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    9. 9
    while(true) 
    {
        i++;
        if (i > Int32.MaxValue - 10)
        {
            MessageBox.Show("Зациклилось!");
            break;
        }
    }

    Запостил: mazhuravlev, 22 Февраля 2018

    Все комментарии (7)
  5. Комментарий к говнокоду #23812

    Показать код ▼

    Куча / Говнокод #23812

    1. 1
    В общем, бот работает хуеватенько, все суффиксы и прочую поебень придётся прописывать вручную. Це ль не пiзда?

    Запостил: g0_1494089131830, 22 Февраля 2018

    Все комментарии (22)
  6. Комментарий к говнокоду #23498

    • Я ему пихал-пихал, но толку мало было. В соседнем треде выяснилось, что он произвольное не воспринимал, а работал скорее по словарю. Потом автор, видимо, начал его править, и прошёл этот алалал.
      Ответить
    Показать код ▼

    C++ / Говнокод #23498

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    13. 13
    14. 14
    15. 15
    16. 16
    17. 17
    18. 18
    19. 19
    20. 20
    21. 21
    22. 22
    23. 23
    24. 24
    25. 25
    26. 26
    27. 27
    28. 28
    29. 29
    30. 30
    31. 31
    32. 32
    33. 33
    34. 34
    35. 35
    // https://github.com/telegramdesktop/tdesktop/blob/5f5770dd46491133b135a71fc2d4f92d13107ade/Telegram/SourceFiles/history.cpp#L1455
     
    int History::countUnread(MsgId upTo) {
    	int result = 0;
    	for (auto i = blocks.cend(), e = blocks.cbegin(); i != e;) {
    		--i;
    		for (auto j = (*i)->items.cend(), en = (*i)->items.cbegin(); j != en;) {
    			--j;
    			if ((*j)->id > 0 && (*j)->id <= upTo) {
    				break;
    			} else if (!(*j)->out() && (*j)->unread() && (*j)->id > upTo) {
    				++result;
    			}
    		}
    	}
    	return result;
    }
     
    void History::updateShowFrom() {
    	if (showFrom) return;
     
    	for (auto i = blocks.cend(); i != blocks.cbegin();) {
    		--i;
    		for (auto j = (*i)->items.cend(); j != (*i)->items.cbegin();) {
    			--j;
    			if ((*j)->id > 0 && (!(*j)->out() || !showFrom)) {
    				if ((*j)->id >= inboxReadBefore) {
    					showFrom = *j;
    				} else {
    					return;
    				}
    			}
    		}
    	}
    }

    очередная порция говнеца из телесрамного клиента

    Запостил: j123123, 07 Ноября 2017

    Все комментарии (119)
  7. Комментарий к говнокоду #23497

    • Науууууууууууууууууууууууууууууууууууууу уууууууууууууууууууууууууууууууууууууууу ууууууууууууууууууучитывал тебе за щеку, проверь.
      Ответить
    Показать код ▼

    PHP / Говнокод #23497

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    13. 13
    14. 14
    15. 15
    16. 16
    17. 17
    18. 18
    19. 19
    20. 20
    21. 21
    22. 22
    23. 23
    24. 24
    25. 25
    26. 26
    27. 27
    28. 28
    29. 29
    30. 30
    31. 31
    32. 32
    33. 33
    34. 34
    35. 35
    36. 36
    37. 37
    38. 38
    <?
     
    Plural::setLanguage(basename(__FILE__, '.php'));
     
    # each rule is a regular expression and its replacement
    Plural::addRules(array(
        '/(matr|vert|ind)(ix|ex)$/i'    => '\1ices',    # matrix, vertex, index
        '/(ss|sh|ch|x|z)$/i'            => '\1es',      # sibilant rule (no ending e)
        '/([^aeiou])o$/i'               => '\1oes',     # -oes rule
        '/([^aeiou]|qu)y$/i'            => '\1ies',     # -ies rule
        '/sis$/i'                       => 'ses',       # synopsis, diagnosis
        '/(m|l)ouse$/i'                 => '\1ice',     # mouse, louse
        '/(t|i)um$/i'                   => '\1a',       # datum, medium
        '/([li])fe?$/i'                 => '\1ves',     # knife, life, shelf
        '/(octop|vir|syllab)us$/i'      => '\1i',       # octopus, virus, syllabus
        '/(ax|test)is$/i'               => '\1es',      # axis, testis
        '/([a-rt-z])$/i'                => '\1s'        # not ending in s
    ));
     
    # words that don't follow any pluralization rules
    Plural::addIrregulars(array(
        'bus'           => 'busses',
        'child'         => 'children',
        'man'           => 'men',
        'person'        => 'people',
        'quiz'          => 'quizzes',
        # words whose singular and plural forms are the same
        'equipment'     => 'equipment',
        'fish'          => 'fish',
        'information'   => 'information',
        'money'         => 'money',
        'moose'         => 'moose',
        'news'          => 'news',
        'rice'          => 'rice',
        'series'        => 'series',
        'sheep'         => 'sheep',
        'species'       => 'species'
    ));

    Удобная и быстрая бибилотека для плюралайза
    https://github.com/mjackson/plural/tree/master/lib

    Запостил: SemaReal, 07 Ноября 2017

    Все комментарии (322)
  8. Комментарий к говнокоду #23806

    Показать код ▼

    Куча / Говнокод #23806

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    Прямо сейчас, пока я правой рукой печатаю этот текст, моя левая рука находится у меня в трусах и нежно щупает, мнёт, ласкает мои яички и пенис.
     
     
     
     
     
     
    Кожа моей мошонки такая нежная... А какой приятный мех окружает мой аппарат...

    Запостил: g0_1494089131830, 21 Февраля 2018

    Все комментарии (27)
  9. Комментарий к говнокоду #23477

    Показать код ▼

    Куча / Говнокод #23477

    1. 1
    Про убогость ООП подхода.

    Итак, вот допустим наследование. Есть всякие там тупые примеры ООП, типа "котик и собачка наследуется от четырехногих" и проч., где подобный бред вполне работает. Но давайте попробуем рассмотреть более интересные ситуации.

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

    Запостил: j123123, 02 Ноября 2017

    Все комментарии (194)
  10. Комментарий к говнокоду #23654

    Показать код ▼

    Куча / Говнокод #23654

    1. 1
    2. 2
    3. 3
    4. 4
    Админ, открой глаза!
    Сайт засерают спамом порнографического характера, а тебе похер?
    Назначь хотябы модератора, например Борманда. 
    Не первый раз уже такая хуйня.

    Запостил: inho, 14 Января 2018

    Все комментарии (470)
  11. Комментарий к говнокоду #3664

    Показать код ▼

    Куча / Говнокод #3664

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    <HTML>
    <HEAD>
    <TITLE>Коммерческий банк "ХОУМ-БАНК"</TITLE>
    </HEAD>
    <BODY>
    <table border="0" width="100%">
       <tr align="center">
       <img src="/img/home.jpg" align="top">
       </tr>
    </table>
    </BODY>
    </HTML>

    Сайт банка "Хоум-банк" (http://www.home-bank.ru). Никаких тебе пхп и жабаскрипт! Новое слово в сайтостроении! При изменении информации соответствующе фотошоппится картинка!
    Неудивительно, что у банка отозвана лицензия: http://www.lenta.ru/news/2010/07/08/homebank/

    Запостил: Webkill, 08 Июля 2010

    Все комментарии (49)
  12. Комментарий к говнокоду #23545

    Показать код ▼

    C++ / Говнокод #23545

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    13. 13
    14. 14
    15. 15
    16. 16
    17. 17
    18. 18
    19. 19
    20. 20
    21. 21
    22. 22
    23. 23
    24. 24
    25. 25
    PrefixAllocator::PrefixAllocator(
        const std::string& myNodeName,
        const KvStoreLocalCmdUrl& kvStoreLocalCmdUrl,
        const KvStoreLocalPubUrl& kvStoreLocalPubUrl,
        const PrefixManagerLocalCmdUrl& prefixManagerLocalCmdUrl,
        const MonitorSubmitUrl& monitorSubmitUrl,
        const AllocPrefixMarker& allocPrefixMarker,
        const folly::Optional<folly::CIDRNetwork> seedPrefix,
        uint32_t allocPrefixLen,
        bool setLoopbackAddress,
        bool overrideGlobalAddress,
        const std::string& loopbackIfaceName,
        std::chrono::milliseconds syncInterval,
        PersistentStoreUrl const& configStoreUrl,
        fbzmq::Context& zmqContext)
        : myNodeName_(myNodeName),
          allocPrefixMarker_(allocPrefixMarker),
          seedPrefix_(seedPrefix),
          allocPrefixLen_(allocPrefixLen),
          setLoopbackAddress_(setLoopbackAddress),
          overrideGlobalAddress_(overrideGlobalAddress),
          loopbackIfaceName_(loopbackIfaceName),
          syncInterval_(syncInterval),
          configStoreClient_(configStoreUrl, zmqContext),
          zmqMonitorClient_(zmqContext, monitorSubmitUrl) {

    Фейсбук выложил какую-то хуйню https://github.com/facebook/openr/blob/master/openr/allocators/PrefixAllocator.cpp#L61

    Запостил: g0cTb, 16 Ноября 2017

    Все комментарии (21)
  13. Комментарий к говнокоду #23589

    Показать код ▼

    bash / Говнокод #23589

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    #!/bin/sh
    while true; do
        date "+Time is %H %M. Stop lurking and get the fuck to work" | say
        sleep 1800
    done

    Я наконец нашёл применение встроенному в OS X TTS-движку.

    Запостил: CHayT, 15 Декабря 2017

    Все комментарии (48)
  14. Комментарий к говнокоду #23811

    Показать код ▼

    Куча / Говнокод #23811

    1. 1
    Остоебу.

    Запостил: g0_1494089131830, 22 Февраля 2018

    Все комментарии (23)
  15. Комментарий к говнокоду #23726

    Показать код ▼

    PHP / Говнокод #23726

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    13. 13
    14. 14
    15. 15
    16. 16
    17. 17
    18. 18
    19. 19
    20. 20
    21. 21
    22. 22
    23. 23
    <?php
     
    $user_data = array(
        'name' => 'Vasya',
        //'comment' => 'Hello, <p>Some HTML</p>', // GOOD
        'comment' => '<!--<script>', // BAD
    );
     
    ?>
     
    <!DOCTYPE html>
    <html>
        <head></head>
        <body>
            <script>
                var data = <?php echo json_encode($user_data); ?>;
     
                window.onload = function () {
                    document.body.appendChild(document.createTextNode(data.name + " says: " + data.comment));
                };
            </script>
        </body>
    </html>

    https://habrahabr.ru/post/348558/

    Интересная херотень.
    Кто сможет подобрать строку, чтобы выполнить произвольный код?

    Запостил: 3_dar, 12 Февраля 2018

    Все комментарии (9)
  16. Комментарий к говнокоду #23707

    Показать код ▼

    Objective C / Говнокод #23707

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    -(id)copyWithZone:(NSZone *)zone
    {
        NSString* str = [self toJSONString];
     
        return [[MyBeautifulClass alloc] initWithJSON:str :NO];
    }

    Запостил: Desktop, 05 Февраля 2018

    Все комментарии (12)
  17. Комментарий к говнокоду #23577

    Показать код ▼

    Куча / Говнокод #23577

    1. 1
    2. 2
    3. 3
    Это письмо не является спамом. 
    Внезапно наткнулся на годный блог: http://nponeccop.livejournal.com
    Чувак одной рукой мечтает о правильном стеке для виртуализации, а другой размышляет о функциональщине и еще матюкается при том.

    Делюсь вот

    Запостил: SemaReal, 10 Декабря 2017

    Все комментарии (4)
  18. Комментарий к говнокоду #20257

    Показать код ▼

    Куча / Говнокод #20257

    1. 1
    https://www.google.ru/search?q=-fpermissive

    Почему я не могу узнать, что делает флаг -fpermissive????7777

    Запостил: Steve_Brown, 23 Июня 2016

    Все комментарии (9)
  19. Комментарий к говнокоду #23803

    Показать код ▼

    Куча / Говнокод #23803

    1. 1
    В чём отличие пылесоса и российской олимпийской сборной?

    Ответ: в объекте интереса.

    Запостил: g0_1494089131830, 20 Февраля 2018

    Все комментарии (7)
  20. Комментарий к говнокоду #23799

    Показать код ▼

    PHP / Говнокод #23799

    1. 1
    php.net/manual/ru/book.runkit.php

    Век живи, век удивляйся PHP

    Запостил: dm_fomenok, 17 Февраля 2018

    Все комментарии (23)