1. Куча / Говнокод #25010

    −2

    1. 1
    2. 2
    3. 3
    https://blog.github.com/2018-10-21-october21-incident-report/
    
    Влажный "GitHub" наебнулся.

    OBEH, 22 Октября 2018

    Комментарии (30)
  2. C++ / Говнокод #25009

    0

    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
    /*
    https://habr.com/post/246009/
    
    Это вторая статья в цикле «Теория категорий для программистов».
    
    ...
    
    Я хотел бы сказать вам, что есть шаблон в стандартной библиотеке С++,
    который принимает две функции и возвращает их композицию, но такого
    нет.
    
    Примечание переводчика: но такой не сложно написать на С++14 (я опускаю
    тонны деталей владения и шаблонной магии для проверок, что эти функции
    и тип аргумента действительно можно компоновать):
    */
    
    template <typename T>
    struct function_arg: public function_arg<decltype(&T::operator())> {};
    
    template<typename ReturnType, typename Arg>
    struct function_arg<ReturnType(Arg) const> {
    	using type = Arg;
    };
    
    template<typename ClassType, typename ReturnType, typename Arg>
    struct function_arg<ReturnType(ClassType::*)(Arg) const> {
    	using type = Arg;
    };
    
    template<typename T>
    using function_arg_t = typename function_arg<T>::type;
    
    template<typename F, typename G>
    auto compose(F&& f, G&& g) {
    	return [f = std::forward<F>(f), g = std::forward<G>(g)]
    		(function_arg_t<F>&& a) {return g(f(std::forward<function_arg_t<F>>(a)));};
    }

    Поэтому я за C++

    j123123, 22 Октября 2018

    Комментарии (9)
  3. Куча / Говнокод #25008

    −6

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    Я ненавижу футбол. Это до крайности тупая, скучная и примитивная игра для быдла, малоинтересная образованным людям. 
    Отвращение к футболу живёт во мне, сколько я себя помню, было оно и в детстве. 
    Когда я был маленьким (это примерно 1980 год - яблоблядей тогда не было и в помине, программистов уважали, а на прыщеандра народ глядел как на пришельца),
    единственным развлечением среднестатичтической семьи был зомбоящик. Передачи смотрели, усевшись у экрана всей семьей или же порознь - в зависимости от уровня взаимопонимания. 
    Между передач иногда транслировали футбол... Отец в такие часы становился монополистом, меня зачастую и выгонял - ещё один повод для ненависти.
    По малости лет, я думал, что футбол транслируют, что тупо чтобы забить эфир. Для меня он стал такой же лишённой смысла нагрузкой, как и реклама. 
    Когда я вижу, что происходит с болельщиками во время матча, мной овладевает злоба, хоть рви на лобке волосы. 
    Я испытываю один за другим, нет - не оргазмы, а приступы когнитивного диссонанса, вызваннного пустыми страданиями и упадком духа здоровенных бугаев по поводу пенальти, 
    сменяемых беспричинной, бурной радостью и идиотским смехом во время гола.
    Мне хочется удавить эту партию, но обычно я просто выбрасываю телевизор.

    Если ещё раз потрёшь пост - я тебя выебу, усёк?

    paul, 22 Октября 2018

    Комментарии (12)
  4. C++ / Говнокод #25007

    0

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    #include <iostream>
    #include <tuple>
    using namespace std;
    
    int main() {
        int a = 5, b = 6;
        tie(a, b) = make_pair(b, a);
        cout << a << " " << b << endl;
        return 0;
    }

    https://ideone.com/9gzogv

    guestinxo, 21 Октября 2018

    Комментарии (57)
  5. Куча / Говнокод #25006

    −3

    1. 1
    Админ ты или не админ?

    Забань борманда /user/5528

    paul, 20 Октября 2018

    Комментарии (1)
  6. C++ / Говнокод #25005

    +1

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    Что-то я давно не обсирал тут хуиту, которую пишут про 
    плюсы на хабре
    
    https://habr.com/post/426965/
    
    Идеального способа для обработки ошибок не существует. 
    До недавнего  времени в С++ были почти все возможные 
    способы обработки ошибок кроме  монад.

    В этой замечательной статье забыли упомянуть setjmp/longjmp(std::longjmp если угодно), который хоть и из Си, но в C++ его никто не запрещал.
    А еще signal (std::signal, если угодно), который хоть и из Си, но в C++ его никто не запрещал.
    А еще goto (почему нет std::goto? Запилите быстраблядь!), который хоть и из Си, но в C++ его никто не запрещал.

    А вообще, зачем иметь в языке такое количество говна в СТАНДАРТНОЙ БИБЛИОТЕКЕ для такой хуиты?

    Вот еще в тему: https://video.twimg.com/tweet_video/De78Qn2XcAAQqfS.mp4

    j123123, 20 Октября 2018

    Комментарии (74)
  7. PHP / Говнокод #25004

    −1

    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
    39. 39
    40. 40
    41. 41
    42. 42
    43. 43
    44. 44
    45. 45
    46. 46
    47. 47
    48. 48
    49. 49
    50. 50
    51. 51
    52. 52
    53. 53
    54. 54
    55. 55
    56. 56
    57. 57
    58. 58
    59. 59
    60. 60
    61. 61
    62. 62
    63. 63
    64. 64
    65. 65
    66. 66
    67. 67
    68. 68
    69. 69
    70. 70
    /* Сортировка начало */
            if (Yii::$app->request->get('sort_number') && strlen(Yii::$app->request->get('sort_number')) === 4) {
                $model->orderBy([
                    'number' => SORT_DESC,
                ]);
            } else {
                if (Yii::$app->request->get('sort_number') && strlen(Yii::$app->request->get('sort_number')) === 5) {
                    $model->orderBy([
                        'number' => SORT_ASC,
                    ]);
                }
            }
            if (Yii::$app->request->get('sort_domain_name') && strlen(Yii::$app->request->get('sort_domain_name')) === 4) {
                $model->orderBy([
                    $company_name => SORT_DESC,
                ]);
            } else {
                if (Yii::$app->request->get('sort_domain_name') && strlen(Yii::$app->request->get('sort_domain_name')) === 5) {
                    $model->orderBy([
                        $company_name => SORT_ASC,
                    ]);
                }
            }
            if (Yii::$app->request->get('sort_domain_id') && strlen(Yii::$app->request->get('sort_domain_id')) === 4) {
                $model->orderBy([
                    'domain_id' => SORT_DESC,
                ]);
            } else {
                if (Yii::$app->request->get('sort_domain_id') && strlen(Yii::$app->request->get('sort_domain_id')) === 5) {
                    $model->orderBy([
                        'domain_id' => SORT_ASC,
                    ]);
                }
            }
            if (Yii::$app->request->get('sort_id') && strlen(Yii::$app->request->get('sort_id')) === 4) {
                $model->orderBy([
                    'id' => SORT_DESC,
                ]);
            } else {
                if (Yii::$app->request->get('sort_id') && strlen(Yii::$app->request->get('sort_id')) === 5) {
                    $model->orderBy([
                        'id' => SORT_ASC,
                    ]);
                }
            }
            /* Сортировка конец */
    
            /* Поиск начало */
            if (Yii::$app->request->get('id') && strlen(Yii::$app->request->get('id')) >= 1) {
                $model->andWhere([
                    'id' => Yii::$app->request->get('id'),
                ]);
            }
            if (Yii::$app->request->get('number') && strlen(Yii::$app->request->get('number')) >= 3) {
                $model->andWhere(['number' => Yii::$app->request->get('number'),
                ]);
            }
            if (Yii::$app->request->get('domain_name') && strlen(Yii::$app->request->get('domain_name')) >= 3) {
                $model->andWhere([$company_name => Yii::$app->request->get('domain_name'),
                ]);
            }
            if (Yii::$app->request->get('domain_id') && strlen(Yii::$app->request->get('domain_id')) >= 3) {
                $model->andWhere(['domain_id' => Yii::$app->request->get('domain_id'),
                ]);
            }
            if (Yii::$app->request->get('appointment') && strlen(Yii::$app->request->get('appointment')) >= 3) {
                $model->andWhere(['appointment' => Yii::$app->request->get('appointment'),
                ]);
            }
            /* Поиск конец */

    Джуна отправили в свободное плавание... как вам?

    ZeiZ, 20 Октября 2018

    Комментарии (34)
  8. Куча / Говнокод #25000

    0

    1. 1
    GET

    guest, 19 Октября 2018

    Комментарии (32)
  9. C# / Говнокод #24942

    0

    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
    public class TransactionRequestViewModel
    {
            public string X_login { get; set; }
    
            public double X_amount { get; set; }
    
            public int X_fp_sequence { get; set; }
    
            public int X_fp_timestamp { get; set; }
    
            public string X_fp_hash { get; set; }
    
            public string X_show_form { get; set; }
    
            public string X_receipt_link_method { get; set; }
    
            public string X_receipt_link_text { get; set; }
    
            public string X_receipt_link_url { get; set; }
    
            public string X_currency_code { get; set; }
    
            public string X_line_item { get; set; }
    }

    Этот "Х" добавляет +80 к читаемости.

    Moses, 19 Октября 2018

    Комментарии (16)
  10. PHP / Говнокод #24940

    0

    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
    <?php
    define('+1', 16384);
    ${'*.'} = function ($a, $b) {
        return floor($a * $b / constant('+1'));
    };
    
    ${'/.'} = function ($a, $b) {
        return floor($a * constant('+1') / $b);
    };
    
    echo ${'/.'}(1, 1) . "\n";
    echo ${'/.'}(1, 2) . "\n";
    echo ${'/.'}(7, 34) + ${'/.'}(23, 99) . "\n";

    Где-то за кулисами прячется факт, что в "PHP" в качестве имён констант и переменных можно использовать произвольные строки.

    https://ideone.com/3MCnCW

    4EPTA_KyJIuC, 19 Октября 2018

    Комментарии (22)