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

    −1

    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
    function testGenRef<T>(v: T) {
        let x = v
        // test that clear() also gets generalized
        function clear() {
    	print(x);
            x = null
        }
        clear()
    }
    
    function testGenRefOuter() {
        print("testGenRefOuter");
        testGenRef(12)
        testGenRef("fXa" + "baa")
    }
    
    function main()
    {
        testGenRefOuter()
        print("done.")
    }

    ну что дорогие мои С/C++ девелоперы.. не ожидали такой подставы... а нука давай свой код на С - С++...

    Запостил: ASD_77, 11 Января 2022

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

    • ия не понял ... что за х... где С/C++ девелоперы?
      Ответить
      • Аниме смотрят
        Ответить
      • Так что ли?
        #include <iostream>
        #include <cstdlib>
        #include <optional>
        
        template <class T>
        void testGenRef (T v) {
          std::optional<T> x = v;
          auto clear = [&] () {
            std::cout << x.value() << std::endl;
            x = std::nullopt;
          };
          clear();
        }
        
        
        void testGenRefOuter() {
          std::cout << "testGenRefOuter" << std::endl;
          testGenRef(12);
          testGenRef(std::string("fXa") + "baa");
        }
        
        int main()
        {
          testGenRefOuter();
          std::cout << "done."  << std::endl;
        }
        Ответить
        • А нахуй здесь optional? И вообще смысл переводить код, который нихуя не делает?
          Ответить
          • > А нахуй здесь optional?

            Чтобы чистить.
            Ответить
          • Ну надо ж туда null какой-то присвоить, вот я и вхуярил optional.
            Ответить
        • Для кого литералы завезли?
          using namespace std::string_literals
          // . . .
          testGenRef("fXa"s + "baa"s);
          Ответить
          • Ну мне-то просительно, я эту вашу крестопарашу не юзаю, ведь у меня в контроллерах она нахуй не нужна.
            Ответить
            • > не нужна

              Там работы со строками нету?
              Ответить
              • Там работа со строками если возникает, решается через memcpy через статические буферы, а не какой-то непонятной хуйней, которая наверняка хип требует.
                Ответить
                • Ага, мы видели: https://govnokod.ru/27941
                  Ответить
                  • Сишечные нуль-терминированные говностроки - ебаная срать. Как и всякие говнофункции, которые вокруг них построены.

                    Крестовые говностроки кстати тоже ебаная срань https://groups.google.com/a/chromium.org/g/chromium-dev/c/EUqoIz2iFU4/m/kPZ5ZK0K3gEJ

                    > TL;DR: std::string is responsible for almost half of all allocations in the Chrome browser process; please be careful how you use it!

                    > In the course of optimizing SyzyASan performance, the Syzygy team discovered that nearly 25000 (!!) allocations are made for every keystroke in the Omnibox. We've since built some rudimentary memory profiling tools and have found a few issues:
                    Ответить
                    • > std::string is responsible for almost half of all allocations

                      И это при том, что std::string всё-таки немного амортизирует аллокации. В делфи с её строками без capacity было хуже.
                      Ответить
                    • Теперь вы никогда не избавитесь от 0-terminated. Азаза. Жрать говно до конца времён.
                      Кококо мы не будем API прыщей переписывать кококо

                      Инетесно, как будет в 2100 году?
                      Ответить
                      • > вы

                        Ахаха! Вы тоже.

                        Java's Modified UTF-8: The null byte '\u0000' is encoded in 2-byte format rather than 1-byte, so that the encoded strings never have embedded nulls.
                        Ответить
                        • > Вы тоже

                          Я никакого отношения к JAWA не имею.
                          Ответить
                      • В 2100-м процессорами будут гвозди забивать.

                        https://www.ixbt.com/news/2021/12/10/v-rossii-nachali-prodavat-brakovannye-processory-jelbrus-v-kachestve-suvenirov.html
                        Ответить
                        • Царь-пушка не стреляет, Царь-колокол не звонит ну и теперь Царь-процессор-Эльбрус
                          Ответить
                          • а эльбрус ли это? вы не забыли что это процессор SPARC
                            Ответить
                            • Как бы секрет на полах шинели то, что вяликий суевренный процессор военной системы - просто подгон после развала Sun Microsystems...
                              Ответить
                            • У них две архитектуры: SPARC и VLIW.
                              Ответить
                          • > Царь-пушка не стреляет, Царь-колокол не звонит

                            Царь-Сишка окрестился.
                            Ответить
                    • > std::string is responsible for almost half of all allocations in the Chrome browser

                      Вот именно поэтому я за «Яндекс.Браузер»

                      Вместо капиталистического крестоблядского std::string, там православная «Яндекс.Stroka».
                      https://github.com/yandex/tomita-parser/blob/d951391916f2894f49e13d447be1dee707504e2c/src/util/generic/stroka.h
                      Ответить
                • > статические буферы

                  Ммм, какие статические буфера... Спасибо, переполнила.
                  Ответить
              • Не, не ну в теории может потребоваться отправить какой-нибудь json на сервак... Но на практике там больше реакция на какие-то сигналы да обработка массивов потоков каких-то данных. Возможно вывод каких-то чисел на экранчик, но там тоже клеить ничего особо не надо.
                Ответить
          • > using namespace

            Уазазазазаза. А в хедерах остаётся лапу сосать? )
            Ответить
          • "fXa" "baa"
            Ответить
    • Есть идея. Вместо дампика скидывать ссылки на коммиты, реализующие данную фичу. Подозреваю, там говна больше. Или у тебя closed source?
      Ответить

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