1. JavaScript / Говнокод #27386

    +1

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    function main() {    
    	(function () {
    		print("Hello World!");
    	})();
    }

    а ваш С компилятор может так говнокодить? а мой компилятор может :)

    Запостил: ASD_77, 30 Апреля 2021

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

    • продолжаем говнокодить компилятор
      Ответить
    • ; ModuleID = 'LLVMDialectModule'
      source_filename = "LLVMDialectModule"
      target datalayout = "e-m:w-p270:32:32-p271:32:32-p272:64:64-i64:64-f80:128-n8:16:32:64-S128"
      target triple = "x86_64-pc-windows-msvc"

      @frmt_11120820245497078329 = internal constant [4 x i8] c"%s\0A\00"
      @s_11208736881023205110 = internal constant [14 x i8] c"Hello World!\00\00"

      declare i8* @malloc(i64)

      declare void @free(i8*)

      declare i32 @printf(i8*, ...)

      define void @main() !dbg !10 {
      %1 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([4 x i8], [4 x i8]* @frmt_11120820245497078329, i64 0, i64 0), i8* getelementptr inbounds ([14 x i8], [14 x i8]* @s_11208736881023205110, i64 0, i64 0)), !dbg !11
      br label %2, !dbg !14

      2: ; preds = %0
      ret void, !dbg !14
      }
      Ответить
      • прикиньте LLVM заемдебил функцию. круто. вот это я заговнокодил :)
        Ответить
        • хуита этот ваш LLVM, им под FPGA не скомпилировать. И даже под 8-битные AVR не скомпилировать.
          Ответить
    • А он может внутри функции определить класс, в методе которого определяется метакласс, из статического метода которого возвращается замыкание, в котором создаётся класс, на основе этого метакласса с полями как у объекта, переданного в статический метод и возвращается экземпляр этого класса? Вот, а Питон — может.

      Я не знаю зачем это нужно, можешь не спрашивать.
      Ответить
      • Да, питон может много ненужной, бесполезной хуиты
        Ответить
      • Ну такую хуйню и в жс можно сделать

        И вероятно в любой динамической хуине
        Ответить
    • А вот C++ может!
      int main()
      {
          ([] {
              std::cout << "Hello World!" << std::endl;
          })();
      }
      Ответить
      • это они недавно научились так делать
        Ответить
        • > недавно

          Ага, всего 10-15 лет назад...
          Ответить
          • для языка программирование это недавно. жаба это делало лет так 21 тому как минимум
            Ответить
            • "лет так 21 тому как минимум" жаба не умела лямбд, а только лишь тупые анонимные классы.

              Из компилируемого мейнстрим говна лямбды завезли сначала в C#, затем в C++ и ObjC (блоки), и наконец в джаву году так в 2015-м
              Ответить
          • ламба была в с++ 11 т.е. 10 лет тому. а в c# она была c 2002 это минимам 19 лет
            Ответить
            • Это не правда про лямбду и C#. Там они появились где-то в 3.0, то-есть в 2007-м где-то.
              Ответить
    • function main()    
      	(function() print("Hello World!") end)();
      end
      Ответить
      • Как хорошо, что в "PHP" нет ни компилятора, ни необходимости так делать.
        Ответить
        • <?php
          function main() {
              (function () {
                  echo 'Hello World!<br/>';
              })();
          }
          
          main();

          (o^▽^o)
          Ответить
          • Это не противоречит моим словам.
            Ответить
          • надо требовать с Амудсена, чтобы сделал $main, $print и $echo иначе они не могут быть использованы в мокроподставках
            Ответить

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