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

    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
    #!/usr/bin/guile -s
    !#
    
    (define (square x)
      (* x x))
    
    (define (square_sum x y)
      (+ (square x) (square y)))
    
    (define (tmax x y z)
      (cond ((and (>= x y) (>= x z)) x)
            ((and (>= y x) (>= y z)) y)
            (else z)))
    
    (define (tms x y z)
      ((cond ((= (tmax x y z) x)
              (if (> y z)
                  (square_sum x y)
                  (square_sum x z)))
             ((= (tmax x y z) y)
              (if (> x z)
                  (square_sum x y)
                  (square_sum y z)))
             ((= (tmax x y z) z)
              (if (> x y)
                  (square_sum x z)
                  (square_sum y z)))
             (else 0))))
    
    (display "Ans: ")
    (display (tms 6 5 4))
    (newline)

    Почему не работает?

    Запостил: JloJle4Ka, 02 Января 2023

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

    • Ну что, никто не знает?
      Ответить
    • Подозреваю, что точное сравнение для плавающего питуха иногда не срабатывает.

      Т. е. (= (tmax x y z) x) может выдавать ложноотрицательный результат.
      Ответить
    • из за синтаксической ошибки на второй строке
      Ответить
      • Это пиздёжь *указательный палец показывает наверх*
        Ответить
    • Это list, а не perl
      Ответить
      • Тут есть разделы для ненужного говна вроде «Haskell» и «Swift», а для классики вроде «Лиспа» разделов нету.
        Ответить
        • Как думаете, поцчему?
          Ответить
          • Потому что говнокодеры пишут на PHP в основном, иногда на джаваскрипте, но никак не на лиспе
            Ответить
    • Почему просто не отсортировать входной список и не позвать square_sum с двумя наибольшими?
      Ответить
      • Ну напиши сортировку )
        Ответить
      • Можно и не сортировать весь список:
        1. Найти наименьшее значение.
        2. Посчитать сумму квадратов всех элементов.
        3. Вычесть из суммы квадрат наименьшего.
        Ответить
        • Слишком много процессорного времени займёт. Эффективнее будет так:

          1. Найти наименьшее значение.
          2. Посчитать сумму квадратов всех остальных элементов.
          Ответить
          • если тебя беспокоит процессорное время, то лишпы это сразу не твой вариант
            Ответить
            • Почему? В книге написано, что это уже давно не так, а сама книга написана уже очень давно.

              Плюс лисп можно компилировать.
              Ответить
              • сколько у тебя запускается интерпретатор guile?
                Ответить
                • Меньше секунды.
                  Ответить
                  • охуеть показатель
                    time покажи
                    Ответить
                    • sys – 0.003, user – 0.010, real – их сумма. По моему достаточно быстро.
                      Ответить
                      • это что же, крутит на хую пистон и почти так же бомжественно, как луа?

                        https://govnokod.ru/26382#comment542845
                        Ответить
                        • А, надо было ещё и что-то печатать...

                          Если делать как там, то:

                          real - 0.013
                          user - 0.007
                          sys - 0.007
                          Ответить
      • Сортировку я пока не изучил, токмо if/cond/define и шебанг.
        Ответить
        • Всё ок, порядок элементов в последовательности известной длины можно определить при помощи хуевой тучи ifов.
          Ответить
          • Можно и в последовательности неизвестной длины, просто нужно написать мокрос.
            Ответить
            • в схемах мокросы не сильно идиоматичны емнип
              Ответить
    • Лолечка проходит SICP, причем гетеросексуальную версию, на лиспе (сейчас копрофаги переписали на какую-то перхоть, чуть ли не на джаваскрипт)
      это похвально!!

      Чувствуешь, как твой код реально представляет собой AST? Ощущаешь ли гомоиконность?
      Ответить
      • > Чувствуешь, как твой код реально представляет собой AST?

        Нет.

        > Ощущаешь ли гомоиконность?

        Нет.

        Зато ощущаю себя охуенным, т.к. написал функцию для подсчёта кубического корня.
        Ответить
      • Ты давно SICP закончил?
        Ответить
      • в параллельной реальности лол-ечка проходит "как же называется эта книга" и течёт
        Ответить
    • да ты на ебло его глянь. и этот чурка ещё удивляется, что ничего не работает.
      Ответить
    • Лолячка, ты вуз закончил?
      Ответить
    • Фу, какой вербозный ИМПЕРативный недоязычок

      То ли дело:
      square =. *:
      square_sum =. +/@:square@,
      max =. >./
      tms =. max@{.~&2 square_sum max@{.~&_2
      echo tms 6 5 4
      Ответить
      • Это Роджер Хуй?
        Ответить
        • Сорян, тупанул, работает только для отсортированных пораметроу.

          Исправил:
          square =. *:
          square_sum =. +/@:square@,
          max =. >./
          scnd_max =. ] max@:* max ~: ]
          tms =. max square_sum scnd_max
          echo tms 6 5 4
          Ответить
          • Если кратко, то
            (>./ +/@:*:@, (] >./@:* >./ ~: ])) 6 5 4
            Ответить
            • Не матерись.
              Ответить
              • Это преамбула какого-то протокола
                Ответить
                • PPP? Там тоже несбалансированные скобки.
                  Ответить
                  • Смотри, какой чувак крутой
                    https://youtu.be/0CgafaxnQ9A
                    Ответить
                    • Блины у харда съёмные?
                      Ответить
                      • ну да, надо их от пыли тряпочкой протереть, и поставить обратно

                        хотя конечно никаких хардов там нет: там есть прошитый в ПЗУ ЯП и накопитель на магнитных дисках (А то и на аудиокассетах)
                        Ответить
                        • Прямоугольная сетка из кирпичиков микросхем — это прямо дух 80-х. Ещё в ту эпоху бывало, что для питания микросхем над платой крепили параллельные жестяные полоски, между которыми через определённые промежутки припаивали керамические конденсаторы для фильтрации радиопомех.
                          Ответить
                          • дык
                            https://gunkies.org/w/images/thumb/a/ae/IBM_5150_motherboard.jpg/400px-IBM_5150_motherboard.jpg

                            а потом пидорасы изобрели чипсет, и всё добро спрятали и стало скучно
                            Ответить
                            • Эх, все шины были, как на ладони. Можно было кустарным способом апгрейдить.
                              Ответить
                • Ещё похоже на правила в конфиге sendmail.
                  Ответить
              • Сорян, я ужратый
                Ответить
            • Ого, это однострочник на J?
              Ответить
              • Я это не собирался отправлять, это моё девушко уведела что я с кем-то переписываюсь и долбануло меня лицом по клаве.
                Ответить
                • откуда у тебя девушка, ты же программист
                  Ответить
                  • Я сам не понимаю, наверное я долго не мылся и вот, завелась
                    Ответить
                • > девушко
                  Они у тебя they/them?
                  Ответить
                  • Да, судя по тому, что она просит называть её то зайкой, то киской, у них диссоциативное расстройство личности
                    Ответить
                  • Кстати, а где Файк?
                    Ответить
      • позеры не нужны
        выйди и зайди нормально
        Ответить
        • Вышел и зашёл к тебе за щеку. Проверь.
          Ответить
          • шо ж ты сразу не сказал, что ты инвалид и без очереди
            Ответить
    • Лол, из-за лишних скобок вокруг condom в tms )))
      Ответить
      • И что эти (((скобки))) в итоге творят?
        Ответить
        • Я лиспер не настоящий, но вроде вызов функции это когда её имя в списке первой идёт, а тут просто список получился, его нельзя вызвать.
          Ответить
          • Ты прав. Объект и список из одного объекта — эти разные вещи. В питоне и прыщах от такого есть защита и нужно запятую лишнюю писать. Может быть в Лиспе так же?
            Ответить
            • ну я не знаю, как там жюль, но рэкет вполне выдаёт ошибку

              expected a procedure that can be applied to arguments
              Ответить
              • Жуль мне высрал что-то непонятное, пришлось ЗАНОВО переписатт код, но зато он заработал
                Ответить
            • довольно гадко, надо сказать, выглядит сиподобная игра с круглыми скобками. очень уродливо смотрится.
              Ответить
    • сикель
      Ответить
    • https://genders.wtf/
      Ответить
      • охуенно
        Ответить
      • Какой woke wok )))

        https://d33wubrfki0l68.cloudfront.net/67f0a74f55b34de3cda797f8fdaceedad7a83fc2/908f1/img/esv43ww1uh-600.jpeg
        С этим же все в порядке, не очень уклюжий креотифф
        Ответить
    • Всякий скриптунишка -- пиздунишка

      Скриптопиздунишки: пиздюнькают нам как прекрасно писать на скриптоговне без компиляции и стат типизации
      Они же: переписывают свое говно на раст, и оно начинает работать в 10000 раз быстрее. https://twitter.com/charliermarsh/status/1613198373594578946?s=20&t=Ah1As1oS7sEyF P8OHLUlLg

      Скриптопиздунишки пиздунишки
      Скриптопиздунишки лицемеры
      Никогда не верь скриптопиздунишкам
      Ответить
      • Скриптопиздунишка в наш в оркестр пришел
        Скриптопиздунишка нам пропаганду принес
        Про то, как хорошо есть говно без проклятой статической типизации и компиляции
        Про то, как хорошо всем,
        А лучше всех ему -- счастливому скриптопиздунишке
        Ответить
      • > Они же

        Я не уверен, что они же, а не просто подгон с царского плеча теми, кто вынужден по каким-то причинам 10% рабочего проводить с питоном. "Они же" обычно пишут на го.
        Ответить
        • Кстати, даже на го оно будет лучше. Как минимум потому, что escape analysis уже в момент компиляции почистит твой код вилкой
          Ответить
        • Судя по контрибьюторам, его вообще запилил практически в одно рыло https://github.com/charliermarsh

          Т.е. может он и питонист, но один-единственный такой питонист на все питонистическое коммьюнити
          Ответить
          • Ни питонисты ссуца от восторга от этой тулы, вон пандас на него переехало
            Ответить
    • ))))))
      https://twitter.com/Zn_Portnova/status/1613175704895504384
      Ответить
      • за использование этого трека давно пора забивать стрелку всем районом за гаражами
        Ответить
        • Я смотрю видео без звука, я же не пидор
          Ответить

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