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

    +3

    1. 1
    print for <>

    Базовая функциональность программы cat на perl. Кто короче?
    (только возможности самого языка без exec и подобных, шеллы вне олимпиады)

    Запостил: Elvenfighter, 24 Сентября 2017

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

    • Конкатенация работает: cat.pl file1 file2
      Читание из Stdin: cat.pl < file1
      Ответить
    • > шеллы вне олимпиады
      > perl
      Ответить
      • Willst du meine große Gurke lecken?
        Ответить
      • echo /usr/bin/perl | sudo tee -a /etc/shells
        sudo usermod -s /usr/bin/perl $USER


        Давай-давай, я посмотрю. Для тренировки можешь начать с perlconsole
        Ответить
      • перл ненужное прыщеговно для красноглазых шкриптоблядей!!!1
        Ответить
        • А Питон?
          Ответить
          • А на него ходят.
            Ответить
            • Куда пропадал, гост?
              Ответить
              • Так ведь нелюди поганые, басурмане проклятые, нехристи окаянные и мужеложцы богопротивные Говнокодик до комы довели. А уютный форум и того раньше лёг.
                Ответить
    • Сэкономил 2 байта сорца, схавал >9000 памяти.
      seq 100500 | memusage perl -e '() for <>'
      seq 100500 | memusage perl -e '() while <>'
      Ответить
      • for <> весь поток сначала затянет в память, а while <> - нет?
        Ответить
        • Да, for даёт списковый контекст, и в нём ромбик возвращает все строки разом. А во while <> будет выдавать по одной.
          Ответить
      • Вот поэтому на Perl пишут однострочниками
        Ответить
    • perl -pe0 <file_1> ... <file_n>
      Ответить
    • *ткнул в случайный яп на вики в разделе бесполезного говна*
      *форкнул заброшенный гитхаб / втёрся в доверие к разрабу*
      *запилил правило "пустая программа -> работать аки кат согласно позикс"*
      *победная кружка чаю*
      Ответить
      • Как выяснилось когда-то такой мыслью уже ударило в мозг разработчиков sed (тогда еще даже не по-хипстерски "концептуально нового" ЯП, а stream editor)
        Ответить
    • awk:
      { print }
      Ответить
      • А sed так умеет? А то там, походу, пустой скрипт прокатит.
        Ответить
    • Что делает этот кот?
      Ответить
    • Больше print'ов богу <>!
      Ответить
    • Базовая функциональность программы true на Perl:
      Ответить
      • ... а так же на PHP, Python, Ruby, JS, Lua, Bash ... (продолжить список скриптушни)
        Ответить
        • Но это только базовая функциональность. Так-то /bin/true должна еще суперпознавательный хелп уметь показывать.
          Ответить
          • Там даже одно время баг был с чтением за пределами стекового фрейма...

            Что-то типа printf(argv[0]);
            Ответить
          • Кстати, я вот сейчас пробую в Ubuntu
            > true --help
            и
            > true --version
            , в мане пишут, что он должен выдавать хелп и версию, но он всё равно игнорирует эти аргументы (как и написано в мане), так что ничего не выводится. Так что, возможно, это ВЕСЬ функционал true.
            У кого-то иначе?
            Ответить
            • type true

              У тебя, скорее всего, вызывается башевский встроенный тру. Попробуй явно - /bin/true --help
              Ответить

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