1. Java / Говнокод #27041

    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
    final class Point {
        public final int x;
        public final int y;
    
        public Point(int x, int y) {
            this.x = x;
            this.y = y;
        }
    
        // state-based implementations of equals, hashCode, toString
        // nothing else
    
    }

    is "just" the data (x, y). Its representation is (x, y), its construction protocol accepts an (x, y) pair and stores it directly into the representation,
    it provides unmediated access to that representation, and derives the core Object methods directly from that representation.
    And in the middle, there are grey areas where we're going to have to draw a line.

    Other OO languages have explored compact syntactic forms for modeling data-oriented classes: case classes in Scala, data classes in Kotlin, and record classes in C#.
    These have in common that some or all of the state of a class can be described directly in the class header -- though they vary in their semantics
    (such as constraints on the mutability or accessibility of fields, extensibility of the class, and other restrictions.)

    Committing in the class declaration to at least part of the relationship between state and interface enables suitable defaults to be derived for many common members.
    All of these mechanisms (let's call them "data classes") seek to bring us closer to the goal of being able to define Point as something like:

    record Point(int x, int y) { }

    [u]https://openjdk.java.net/jeps/359
    https://cr.openjdk.java.net/~briangoetz/amber/datum.html[u]

    3.14159265, 19 Октября 2020

    Комментарии (49)
  2. PHP / Говнокод #27039

    +3

    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
    /**
     * formHostnameRule: правило, проверяющее имя хоста
     *
     * @package system
     * @subpackage forms
     * @version 0.1.1
     */
    class formHostnameRule extends formAbstractRule
    {
        private $validTlds = array(
        'ac', 'ad', 'ae', 'aero', 'af', 'ag', 'ai', 'al', 'am', 'an', 'ao',
        'aq', 'ar', 'arpa', 'as', 'at', 'au', 'aw', 'ax', 'az', 'ba', 'bb',
        'bd', 'be', 'bf', 'bg', 'bh', 'bi', 'biz', 'bj', 'bm', 'bn', 'bo',
        'br', 'bs', 'bt', 'bv', 'bw', 'by', 'bz', 'ca', 'cat', 'cc', 'cd',
        'cf', 'cg', 'ch', 'ci', 'ck', 'cl', 'cm', 'cn', 'co', 'com', 'coop',
        'cr', 'cu', 'cv', 'cx', 'cy', 'cz', 'de', 'dj', 'dk', 'dm', 'do',
        'dz', 'ec', 'edu', 'ee', 'eg', 'er', 'es', 'et', 'eu', 'fi', 'fj',
        'fk', 'fm', 'fo', 'fr', 'ga', 'gb', 'gd', 'ge', 'gf', 'gg', 'gh',
        'gi', 'gl', 'gm', 'gn', 'gov', 'gp', 'gq', 'gr', 'gs', 'gt', 'gu',
        'gw', 'gy', 'hk', 'hm', 'hn', 'hr', 'ht', 'hu', 'id', 'ie', 'il',
        'im', 'in', 'info', 'int', 'io', 'iq', 'ir', 'is', 'it', 'je', 'jm',
        'jo', 'jobs', 'jp', 'ke', 'kg', 'kh', 'ki', 'km', 'kn', 'kr', 'kw',
        'ky', 'kz', 'la', 'lb', 'lc', 'li', 'lk', 'lr', 'ls', 'lt', 'lu',
        'lv', 'ly', 'ma', 'mc', 'md', 'me', 'mg', 'mh', 'mil', 'mk', 'ml', 'mm',
        'mn', 'mo', 'mobi', 'mp', 'mq', 'mr', 'ms', 'mt', 'mu', 'museum', 'mv',
        'mw', 'mx', 'my', 'mz', 'na', 'name', 'nc', 'ne', 'net', 'nf', 'ng',
        'ni', 'nl', 'no', 'np', 'nr', 'nu', 'nz', 'om', 'org', 'pa', 'pe',
        'pf', 'pg', 'ph', 'pk', 'pl', 'pm', 'pn', 'pr', 'pro', 'ps', 'pt',
        'pw', 'py', 'qa', 're', 'ro', 'ru', 'rw', 'sa', 'sb', 'sc', 'sd',
        'se', 'sg', 'sh', 'si', 'sj', 'sk', 'sl', 'sm', 'sn', 'so', 'sr',
        'st', 'su', 'sv', 'sy', 'sz', 'tc', 'td', 'tf', 'tg', 'th', 'tj',
        'tk', 'tl', 'tm', 'tn', 'to', 'tp', 'tr', 'travel', 'tt', 'tv', 'tw',
        'tz', 'ua', 'ug', 'uk', 'um', 'us', 'uy', 'uz', 'va', 'vc', 've',
        'vg', 'vi', 'vn', 'vu', 'wf', 'ws', 'ye', 'yt', 'yu', 'za', 'zm',
        'zw'
        );

    https://github.com/wiistriker/govnokod_legacy/blob/master/mzz/system/forms/validators/formHostnameRule.php

    Кажется, я эту хуйню уже выкладывал, но да ладно, похуй: это говнище достойно даже повторной публикации здесь. Проебал из-за какой-то древней тупой пхп-макаки деньги за домен!

    gost, 18 Октября 2020

    Комментарии (87)
  3. JavaScript / Говнокод #27038

    +2

    1. 1
    2. 2
    ARMv8.3-a adds a new instruction "jscvt", which can be used for converting double to int32_t in JS semantics.
    https://bugs.webkit.org/show_bug.cgi?id=184023#c24

    MAKAKA, 18 Октября 2020

    Комментарии (44)
  4. 1C / Говнокод #27037

    0

    1. 1
    2. 2
    3. 3
    4. 4
    Если Число(Сред(Строка(НачПериода),4,2)) <> Число(Сред(Строка(КонПериода),4,2)) Тогда
    	Предупреждение("Нельзя брать период с разными месяцами!!!");
    	Возврат;
    КонецЕсли;

    Мне так не дано писать код :-)

    Asinto, 17 Октября 2020

    Комментарии (4)
  5. PHP / Говнокод #27036

    0

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    9. 9
    $users = new Users();
    
     $users->findBySql("SELECT * FROM `users`");
    
    foreach($users as $user) {
    
          echo $user['email'] . "<br>";
    
    }

    Task framework основан на MVC парадигме с удобством использования и минимум функционала для решения простых задач.
    В отличие от стандартных решений вместо контроллера тут используется задача (task)


    h/523828

    gost, 17 Октября 2020

    Комментарии (31)
  6. PHP / Говнокод #27035

    0

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    // https://vk.com/login?u=2&to=YWxfZmVlZC5waHA-
    $ echo YWxfZmVlZC5waHA- | base64 -d
    al_feed.phpbase64: invalid input
    
    $ echo -n al_feed.php | base64
    YWxfZmVlZC5waHA=

    Олимпиадники даже base64 умудрились пропатчить

    Fike, 17 Октября 2020

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

    0

    1. 1
    https://pbs.twimg.com/media/EjtRN4HX0AA6FPN.jpg

    MAPTbIwKA, 16 Октября 2020

    Комментарии (91)
  8. Haskell / Говнокод #27033

    −1

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    zero :: Integer -> Bool
    zero = (==0)
    
    ieq :: Num p => Bool -> p
    ieq x = if x then 1 else 0
    
    elem' :: (Foldable t, Eq a) => t a -> a -> Bool
    elem' xs x = not $ zero func
                where 
                    func = foldl (\acc y -> acc + (ieq $ x == y)) 0 xs

    Петуху дали поиграть в Haskell.

    digitalEugene, 16 Октября 2020

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

    −1

    1. 1
    Get-NetTCPConnection -State Listen | %{[pscustomobject]@{Port=$_.LocalPort; Process=$(Get-Process -Id $_.OwningProcess)}} | sort {[int]$_.Port}

    Давайте течь от powershell.

    MAPTbIwKA, 15 Октября 2020

    Комментарии (20)
  10. Pascal / Говнокод #27031

    −1

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    // добавляем новые ссылки
      for i := 0 to ATags.Count - 1 do
      begin
        // так мне кажется лучше
        Application.ProcessMessages;

    кому или чему лучше кроме тебя, автор ?

    xoodoo, 15 Октября 2020

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