1. Perl / Говнокод #12833

    −116

    1. 1
    sprintf "%d-%02d-%02d", map { $$_[5]+1900, $$_[4]+1, $$_[3]+1 } [localtime];

    Даты. Perl. Классика.

    http://perldoc.perl.org/POSIX.html#strftime

    Запостил: Elvenfighter, 01 Апреля 2013

    Комментарии (4) RSS

    • с strftime длиннее код будет, так что вполне perl-way.
      Ответить
      • >>с strftime длиннее код будет, так что вполне perl-way.
        strftime("%Y-%m-%d");

        Это длиннее? Или я чего-то не понимаю?
        Ответить
    • Вот я все конечно понимаю - скорость, байтоебство, и все такое. Но почему бы не вернуть дату в виде хеша, а не в виде тупла? Просто "year" вместо 5 смотрелось бы немного нагляднее, и не надо было бы лезть в ман, и смотреть ху из ху.

      P.S. А юзать конструкцию типа ($sec, $min, ...) = localtime все равно неудобно, т.к. каждый раз надо вспоминать какие именно там компоненты, и в каком порядке их писать.

      P.P.S. Я вообще против туплов с размером больше 3. Да и 3 уже сомнительное удовольствие.
      Ответить
      • >Я вообще против туплов с размером больше 3.
        +1
        >Да и 3 уже сомнительное удовольствие.
        Равно как и кол-во аргументов в методе.
        Ответить

    Добавить комментарий