1. Куча / Говнокод #28267

    0

    1. 1
    Именно поэтому я за «PHP» #5

    #1: https://govnokod.ru/26462 https://govnokod.xyz/_26462
    #2: https://govnokod.ru/26827 https://govnokod.xyz/_26827
    #3: https://govnokod.ru/26832 https://govnokod.xyz/_26832
    #4: https://govnokod.ru/27539 https://govnokod.xyz/_27539

    Запостил: nepeKamHblu_nemyx, 04 Июля 2022

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

    • Добрый вечер.

      Этот оффтоп сгенерирован автоматически.

      Индекс оффтопов: https://index.gcode.space/.
      Зеркала Говнокода и полезные ресурсы:
      * https://govnokod.xyz/ (альтернативный Говнокод)
      * https://gcode.space/ (read-only зеркало Говнокода)
      * https://t.me/GovnokodBot (Говнокод-бот в «Telegram»)
      * https://t.me/GovnokodChannel (Тематический канал в «Telegram»)
      * https://vorec.space/ (глоссарий Говнокода)
      * https://app.element.io/#/room/#govnokod:matrix.org (резервный чат)

      Примечание: автоматические перекаты в настоящее время осуществляются только с аккаунта nepeKamHblu_nemyx.
      Остерегайтесь подделок. Берегите себя и своих близких. Кок!
      Ответить
    • Даже перекатник за "PHP".
      Ответить
    • GO - говно ссаное.
      Ответить
      • GO имеет отличный интепор с сями. Пока жависты, шарпеи и питонисты сосут хуй, Go умеет так
        package main
        
        // #include<unistd.h>
        import "C"
        
        func main() {
                C.sleep(100)
        }


        То есть Go просто тупо умеет читать декларации сишного кода и делать по ним стат типизацию!

        Правда, только с gcc (видимо ест его AST или хз) ну и похуй.

        Реально, ну кто (кроме С++) так умеет?
        Если Бог не дал человеку выского IQ чтбы писать на няшной или C++, а работать с API операционки надо, то Go для него -- самое то!!

        зы: а ржавый pedo/rust умеет?
        Ответить
        • C++ не умеет. с.м. крестоманглинг
          Ответить
          • extern "C"
            Ответить
          • C++ прекрасно умеет запускать сишный код
            С разумеется не может запускать классы, если они не экспортируются как функции через exrtern "C"

            Думаю, gcc и .go файлы плохо ест (но может наверное линкроваться с бинарясми, а может нет, неебу)

            Мне на в ту сторону похуй, мне надо API операционок трогать
            Ответить
            • -
              Ответить
            • > C++ прекрасно умеет запускать сишный код

              При условии что в хедерах нет никакой несовместимой хуйни.
              Ответить
              • Например? Типа долбоёб назвал переменную «class»
                Ответить
                • Например если есть некий макрос который раскрывается в кусок кода который в крестах некорректен. Например, там может быть макросня с VLA, а в крестах нет VLA.
                  Или может быть хуйня, которая с точки зрения крестов UB, а с точки зрения Си - не UB.
                  Ответить
                • > долбоёб назвал переменную «class»

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

                        Вот например ObcJ так сделал
                        Ответить
        • > Реально, ну кто (кроме С++) так умеет?

          Objective-C. Ну и всякие мелкомягкие говнорасширения крестопараши, типа "Managed C++", "C++/CLI" еще.
          Ответить
          • точно, я и забыл про чудесное яблоко. Из него отлично сишкин код дергается
            Ответить
            • Там ву дизайн это сделано, чтобы любой шароварник мог хуяк Cttl+C, хуяк Ctrl+V и Desktop Clock Deluxe за 20 басков готово. А Яббле приятно, что в результате у них не только Adobe.
              Ответить
              • Яблоприлодежения работают лучше
                Во многом я связываю это с тем, что swift лучше котлина, ARC лучше GC, а llvm лучше связки jvm oopcodes -> ART
                Ответить
                • Это из-за того, что ISV прог мало и порок вхождения. Если сделают скидку - сразу появится макдельфи и прочие вижуал йажаскрип с соответственным качеством.
                  Ответить
    • Яндекс открыл офис в Београде!
      https://www.youtube.com/watch?v=ujQBKpjYqfE
      Ответить
      • Ну ты бы ещё ссылку на XcQ скинул.
        Ответить
      • Karadzicu
        Vodi Srbe Svoje
        Vodi Srbe Svoje

        Кстати, у них походу остался звательный падеж: "Караджичу" это же наверное такое уважительное обращение
        Ответить
      • Every time this gets reuploaded the quality gets worse I love it

        https://files.catbox.moe/0c45ez.jpg
        Ответить
        • а ты видел ответки?
          https://www.youtube.com/watch?v=yRGgl9KT9rE
          https://www.youtube.com/watch?v=wuRsiF2Uw2Q
          Ответить
          • Вторую. Что, наверное, неудивительно, потому что я котирую хорватов за то, что наваляли сербогрязи.
            Ответить
            • Так вторая боснийская, первая хорватская (где хайрастый чувак поет за домовину, слободу, и против четников)
              Ответить
    • Над больными люди можно смеяться тогда, и только тогда, если они пыхопидоры
      ---

      Здравствуйте, у меня есть таблица в которой размещены несколько записей, в них присутствует группа картинок. Подскажите как распарсить эти картинки и вывести их пути отдельно. Вот как выглядит запись в таблице (в поле text).

      Описание статьи
      <div class="image_group">
      <div class="image1"><img src="http://site.ru/files/image/1135051920/1.jpg"/></div>
      <div class="image2"><img src="http://site.ru/files/image/1245377922/2.jpg"/></div>
      <div class="image3"><img src="http://site.ru/files/image/1725283924/3.jpg"/></div>
      <div class="image4"><img src="http://site.ru/files/image/1815032920/4.jpg"/></div>
      </div>

      Те картинки которые изначально выгружались в качестве тега рекомендуется убрать, чтобы они не отображались при выводе.
      include "config.php";
      try {
               $query = "SELECT id, title, date, text FROM data";
               $STH = $dbh->prepare($query);
               $STH->execute();
            
      }
      catch(PDOException $e) {
             echo "1 Обнаружена ошибка. Напишите администратору. $email<br>";
            file_put_contents('PDOErrors.txt', $e->getMessage(), FILE_APPEND);
      }
            
              $items = $STH->fetchAll(PDO::FETCH_ASSOC);
              foreach($items as $item)
              {
                echo '<table border="1" cellspacing=0><tr><td>'.$item["title"].'</td></tr><tr><td>'.$item["text"].'</td></tr>
      <tr><td>------------IMG--------------</td></tr></table>';
            
              }
      Ответить
      • PHP хуйня из под коня
        Ответить
        • обоснуй!!!!!!!!!!!!!!!!!!!
          Ответить
          • пойдем выйдем ёпт

            Ты кстати в каком городе живешь?
            Ответить
            • https://www.dumpert.nl/item/8055453_edc815ac
              Ответить
              • Это ты с пацанами в Маастрихте?

                Ебать до тебя три часа ехать, не пойду с тобой бухать, и не зови даже
                Ответить
                • ну дык я сам напишу когда в амстердаме/гааге появятся дела и после них будет свободное время
                  Ответить
                  • Я в пригороде Амстера видимо буду жить, пол часа на спринтере
                    Станцию Naarden-Bussum знаешь?

                    Слушай, вот я нищеброд помоечный, нашел на марктплаатс бесплатно шкаф в двух км от меня. Тут же нет аналога Таксовичкова чтбы его перевести?

                    Муверы хотят сразу 100 евро
                    Ответить
                    • насколько понимаю, местные решают проблему наличием прав (возможно не у себя, а у соседа/знакомого/коллеги) и арендой грузовика. да, муверы берут сто с лишним евро в час, с этим ничего не сделаешь. вообще я бы прям на работе и спросил как здесь такие вопрсоы решаются.
                      Ответить
                      • Понятно. Не уметь водить и жить на Западе это как не уметь читать по английски, и пытаться работать вайти

                        на работе мне тоже самое сказали
                        Ответить
                        • ну вот у меня тоже в планах на год стояло получить права, пока не ебанулось вообще всё

                          я кстати реально зарплату за полгода разом походу получу бггг
                          ну это ещё оптимистичный прогноз бггг, может и дольше выйдет
                          Ответить
                          • А рашкинские права у вас работают?
                            Ответить
                          • А где ты деньги на еду берёшь сейчас?
                            Ответить
                            • из тумбочки. я переезжал с суммой, которая позволит мне существовать год без поступлений.
                              Ответить
                          • >я кстати реально зарплату за полгода разом походу получу бггг


                            Это как в 1992-м году в России?
                            Ответить
                          • у меня тоже в планах на го стояло
                            Ответить
                        • Хуйню сморозил, попутав с Америкой.

                          Вот скажи мне, откуда и куда ты собрался ехать в Бельгии, что обязательно кар нужен.
                          Ответить
                      • Ебать охуевшие
                        Ответить
                        • это два грузчика плюс машина, включая естественно налоги, которые они из этого заплатят
                          Ответить
                        • Всё, что делается с помощью людей, очень дорого стоит в гейропке

                          Нельзя нанять стайку таджиков за плошку доширака же, надо питухам страховку платить (не дай бог он себе пианину на ногу уронит!) за машину налог платить, итд
                          Ответить
                          • По такой логике тогда и тебе 100 евро не должно быть дорого.
                            Ответить
                            • тут из-за этой включенной в стоимость нагрузки люди стараются прибегать к некоторым услугам только в случае необходимости, через какое-то время привыкаешь. я хуй знает как там в амстере, но тут наверное такси штук десять например на весь город. в общем, как правило эти сто евро есть, но на один шкаф их не тратят. а когда полноценный переезд из квартиры в квартиру - то да, заказывают какой-нибудь bedrijf.
                              Ответить
                              • А нахуй так жить тогда? Чем Москва хуже?
                                Ответить
                                • фашистами

                                  правильный вопрос "нахуй жить, если ваше удовольствие от жизни измеряется исключительно количеством материальных благ и банком с самым продуманным ui (который потом вас с радостью опустит на комиссию в двести баксов, потому что см. пункт про фашистов)"
                                  Ответить
                                  • >ахуй жить, если ваше удовольствие от жизни измеряется исключительно количеством материальных благ

                                    а чем измеряется твое удовольствтие
                                    Ответить
                                  • не отвечай фашисту.
                                    Ответить
                                • В мск уже нормально на бирже не поторгуешь.
                                  Ответить
        • Go - кал из под козла
          Ответить
          • Приведи пример того, что тебе больше всего не нравится в Го, и расскажи за что ты его ненавидишь
            Ответить
            • https://govnokod.ru/go
              Ответить
              • >To get the length of a String in Go programming, convert the string to array of runes, and pass this array to len() function.

                сук
                да ладно
                да не может этого быть
                да вы издиваетесь


                rune это char?
                ---
                Как в "Go" у карты взять keys(), и values()?
                Нужно написать цикл.

                Ну это правда. Как в массиве найти букву "ы"?
                Нужно взять цикл
                Ответить
              • >min для интов нет
                >интерполяци нет

                сук.

                Но при этом есть GC, и тягомотина с указателями

                Go это удобство няшной, простота C++, и производительность Ruby!!
                Ответить
                • А это и не нужно. А если очень хочется, то и самому можно написать.
                  Ответить
                  • --Скажите, почему в вашем языке нету умножения?
                    --Умножение легко пишется на основе сложения
                    Ответить
                    • сложения тоже нет, оно легко делается на основе операторов inc и dec

                      чисел тоже нет
                      Ответить
                      • есть байты, из которых легко представить любое число (втч и отрицательное)

                        Ифы и циклы не нужны, потому что есть условный переход "Jump-if-not-equals-zero", а из логических операторов мы оставили только основые: NOR и NAND, ими можно выразить что угодно

                        Кроме скалярного типа "байт" в нашем царском языке есть еще тип "массив байт", с их помощью можно построить любые структуры

                        Спецификация получившегося языка умещается на одну страничку, и программист освоит его за пару часов
                        Ответить
                        • b a s h
                          Ответить
                        • Два оператора — слишком много. Одного только NAND достаточно (микросхемы на TTL тому подтверждение) либо одного только NOR (микросхемы на КМОП тому подтверждение).
                          Ответить
                          • P.S. Подсказка: из NAND либо из NOR легко делается NOT, а законы де Моргана легко превращают конъюнкцию в дизъюнкцию или наоборот.
                            Ответить
                            • > из NAND либо из NOR легко делается NOT, а законы де Моргана легко превращают конъюнкцию в дизъюнкцию или наоборот.

                              https://govnokod.ru/23832#comment781092

                              С операторами & | ^ всё понятно.
                              Тут в другом вопрос: как реализовать сдвиговый регистр?
                              Ответить
                          • баянистая_пикча_куркулятора_с_одной_кнопкой_NAND.жпег
                            Ответить
                        • https://esolangs.org/wiki/FlipJump
                          Одной инструкции над void* хватит всем
                          Ответить
                          • Напоминает Ultra-RISC, когда у процессора одна инструкция:

                            https://ru.m.wikipedia.org/wiki/URISC

                            Я ещё кидал ссылку на «movfuscator» — конпелятор, который изо всех инструкций процессора использует только mov с косвенной адресацией.
                            Ответить
                            • > Я ещё кидал ссылку на «movfuscator»использует только mov с косвенной адресацией

                              Помню. Охуенная вещь.
                              Там ещё page fault использовался для организации цикла.
                              Ответить
                              • >Там ещё page fault использовался для организации цикла.

                                шусто работало, наверное


                                когда-то пейдж фолт использовался для реализации виртуалок
                                Ответить
                                • С учётом того, что арифметику придётся пилить побитово, пейдж фолт для перехода -- это одно из самых быстрых мест.
                                  Ответить
                      • > чисел тоже нет
                        Числа легко делаются через n-fold композицию функций.
                        См. нумералы Чёрча.

                        > сложения тоже нет, оно легко делается на основе операторов inc и dec
                        См. ниже
                        https://govnokod.ru/28267#comment781082
                        Ответить
                    • > Умножение легко пишется на основе сложения
                      > сложения тоже нет, оно легко делается на основе операторов inc и dec

                      В нормальных языках так и есть.

                      https://govnokod.ru/23832
                      Ответить
    • Расстояние между Ужописом и Пярну 5 u 43 min. (477,9 km) по трассе A2
      Ответить
    • Я тут размышлял на досуге о том, что может быть хуже, чем рюзкэ. Размышлял, размышлял, и пришел к мысли, что таких наций по-большому счету и нет. Хуже рюзкэ могут быть лишь паразитарные организмы вроде клещей или блох, но их хотя бы проще вывести, да и клещ присосавшись к твоему телу уж всяко не будет рассказывать тебе, что высасывает из тебя кровь по большой любви, называть "младшим братом" и передавать энцефалит в качестве Дара Великой Дружбы . Однако следует признать, что есть как минимум одна гондырлопедерастная "нация", которая в степени ублюдочности практически ни в чем не уступает блевотной рюсне.

      Быть представителем этой нации должно быть так же приятно, как собирателем "уток" в лепрозории, ибо у твоей жены скорее всего будут золотые зубы, а звать ее будут Ёблица Клистирович. Ты будешь знать, что твоя страна бездарно проебала все войны за последних, как минимум 100 лет, а в твою прапрапрабабку кончал волосатый турок. Ты будешь разговаривать на нелепом, говнобулькающем языке в котором "поезд" пишется, как "воз", а "собака", как "пас". И все ближайшие соседи, даже кровнородственные твоей нации, услышав откуда ты будут приветствовать тебя радостным возгласом "Jedi govna!" Да, должно быть вы уже поняли, что эти строки написаны про подзалупную сербогрязь.
      Ответить
      • Если Балканы называют "Пороховой бочкой Европы", то Сербию можно было бы назвать сточной канавой Европы. Или геморройной шишкой Балкан. Не знаю даже. Населена эта горноублюдия народом, который за всю свою великую историю умудрился повоевать со всеми своими соседями, и получить сокрушительной пизды практически ото всех. Сербосрань очень любит рассказывать, охуительно прекрасные истории о том, как их гордый норот спас всю Европу от турецкого нашествия, заслонив христианскую цивилизацию своим горячим, немытым телом. Но мы-то с вами знаем, что турецкое нашествие было остановлено в битве под Веной объединенной австро-польской армией, а вся сербская борьба с турецким нашествием выглядела примерно так: пока вислобрюхие Милицы и Бранки раздвигали булки перед дюжими Селимами и Мехметами сербомужья сидели в горах, вонзая свои кожанные мечи в коричневые ножны друг друга. Собственно такая уникальная манера ведения боевых действий впоследствии и сделала обсербов петуханами Балкан, которых цинично хуесососит даже полуграмотная косовская цыганва. А чего вы хотите от ничтожной нации даровавшей миру топоним Рашка?
        Ответить
        • Однако, сравнение с поехавшей русней было бы абсолютно несправедливо, если бы не одна родственная черта между этими братьями-дегенератьями, а именно - собирательсво земель. Когда Османская Империя стала гнить и вонять, а Австрия откровенно впадала в старческий маразм сербогниль зашевелилась, в попытках осуществления своей сладкохлебной, великодержавной мечты - создании Югославии. Выражаясь без неуместной политкорректности Югославия это такая нелепая помесь головы собаки и кошачьей сраки. Охуительная многонациональная, концентрационная коммунальная гауптвахта, где у входа бошняк совершает намаз, в центре помещения серб совершает обмаз, черногорец и словенец кушают из единственной тарелки, а наверху на трубе сидит хорват и орёт: "Бля, с кем вы меня посадили, охуеть, ёбаный в рот!" Впрочем, как обычно развязать войну у сербоблядей получилось (даже Мировую) а вот вытянуть её - хуй. Пришли немцы и провели горным мойдодырам чем-то по губам, после чего мойдодыры отстреливаясь от бошей своими бомбящими пуканами драпали до самой албанской границы громко плача: "Расеюшка, спаси". Серборасты всегда активно вспоминают о Расеюшке, когда их пиздят - это у них уже выработанный рефлекс, как у собачонок.
          Ответить
          • Тем не менее мы все знаем, чем закончилась та война, и в качестве утешительного приза сербоманькам позволили собрать почти всех балканцев возле параши под названием Югославия. Это было ошибкой, разумеется, ибо в 41 опять пришли немцы и провели дырявым чем-то по губам. На сей раз сербоманьки даже Россиюшку на помощь позвать не успели. На оккупированных территориях сербососы постарались развернуть копротивление, но оно натолкнулось на легкое непонимание со стороны главным образом братьев хорватов, которые, наконец получив свое национальное государство (НГХ) отчего-то не захотели возвращаться в лоно Подшконославии и предпочли немножечко убивать сербонедоумков. В те годы в НГХ практически рухнул рынок ночных горшков и шаров для кегельбана, вместо них каждая уважающая себя хорватская семья использовала для этих целей пустые сербоголовы. Еще одним забавным аспектом той войны являются взаимоотношения сербоебеней и бомбардировочной авиации. В 41 году, перед тем, как провести в очередной раз чем-то серборастам по губам немцы поздравили порвославных вонючек с Пасхой, разбомбив кудахтающий петушатник под названием Белград в пух и перья, а уже в 44 году доблестные американские авиаторы добомбили к хуям то, что не добомбили их немецкие коллеги. С тех пор сербская жопа и американская авиабомба буквально притягиваются друг к другу в соответствии с непознанным Законом Бытия, ибо серб это победитель по жизни.
            Ответить
            • Впрочем мы все знаем, чем закончилась и та война. И вот опять Человечество допустило досадный просчет, позволив хербам запихнуть в свою Гауптвахтию несчастные балканские народы, и реставрировать Копрославию теперь уже в виде выхолощенной социалистической федерации. Хочу отдельно отметить, что каждая современная, уважающая себя серборастическая нациблядь просто обязана до кровавых мозолей дрочить на СФРЮ - социалистическое государство(!), почти всю свою недолгую историю, управлявшееся хорватом(!!). Справедливости ради, если бы на месте Йосипа Броза засел какой-нибудь гребень с фамилией Хуйланович или Защеканович СФРЮ рухнула бы практически сразу, ибо отсосерб это жопорукий уебан от рождения. А так по меркам социалистического лагеря СФРЮ почти пришла к успеху. Тем не менее сколь веревочке не виться, ей придется удавиться. В 1980 году Умер Йосип Броз. Его пост занял какой-то македонский прощелыга. Вероятно он уже о чем-то догадывался, ибо подал в отставку ровно через одиннадцать дней. Все последующие председатели Президиума СФРЮ не сочли нужным задерживаться на этом посту дольше года. И то верно - хули об говно мараться? А в памятном 91 СФРЮ рассыпалась, как гнилой пень, когда в буквальном смысле одним днем из состава Югосрании вышли наиболее богатые республики Словения и Хорватия, по сути и кормившие из своих доходов Сербоблядию. Тут-то и надо бы "нации воинов" показать себя, да что-то как-то не фартануло. И если с Хорватией еще получилось повоевать более менее по-настоящему, то в крошечной Словении была одержана попросту сокрушительная победа над здравым смыслом и вообще всей военной наукой.
              Ответить
              • Чабаны, извозчики, почтальоны и пивовары, вооруженные метлами и вилками сперва блокировали 35 000 югославскую (читай сербскую) армию, а затем через 10 (десять) дней заставили ее убраться из своей страны, сдав победителям значительную часть оборудования. При этом сербопетухи потеряли 45 человек убитыми, и 4700 живыми, именно столько "югослабов" сдалось в плен в ходе боевых действий. ЮНА (Вооруженные Силы Югошвалии) похудела на 31 танк, 22 БМП, 172 грузовика, и 6 самолетов! Потери словенцев уложились в 9 убитых (хотя что-то мне подсказывает, что эти люди погибли не от вражеского огня, а от неосторожного обращения с оружием). Можно свободно констатировать, что таких выдающихся успехов в деле проёба всего и вся не добивалась ни одна армия в Истории. И вот эти сербы руки-пенисы угрожают сейчас приехать в Украину и дать пизды бендеровцам? Это по-истине страшная угроза, ибо случись это в самом деле, то у украинцев может не хватить места для размещения военнопленных.
                Ответить
                • После такого оглушительного успеха республики начали расползаться, как тараканы: без единого выстрела ушла Македония, за ней Босния, и так до тех пор пока в составе государства с поэтическим названием СРЮ сербы не остались сидеть вдвоем с черногорцами, как два фуфела. С соседями эта геополитическая нежить решила строить отношения очень близким для любого братушечного сердца способом: провоцированием сепаратистских настроений в сопредельных государствах, снабжением деньгами и оружием откровенных террористов и нацистских ублюдков, харканьем в суп и выстрелами из-за угла. Ничего не напоминает? Пост президента СРЮ (так теперь называлась должность Главпетуха Балкан) в те годы занял недалекий и мстительный человечек по имени Слабодаун. И так, как гражданская война в Боснии к тому моменту закончилась, а бунт петушиного кутка на территории Хорватии под названием "Србска Сраина" был безжалостно подавлен в ходе операции "Буря", то Слабодауну пришлось очень долго придумывать, чтобы еще проебать. Тут очень кстати, под руку подвернулось Косово, где война лениво перекатываясь шла аж с 91 года. Слабодаун твердо решил, что по графику нужно срочно проебать еще одну войну и отправил своих непобедимых (в деле поглощения ракии) воинов этнически чистить непокорных косоваров. Правда, на сей раз Запад решил, что охуительные истории в исполнении Балканопахомии его уже доебали, и сам начал чистить хербов.
                  Ответить
                  • Для начала американская авиация по сложившейся традиции разбомбила к хуям Белград, потом в воду слетели пару мостов, потом на воздух взлетело посольство красножопых гуков,
                    а потом случилась самая эпическая победа в истории Сосербии - уничтожение "стелса". Этот успех настолько обрадовал нацию газонюхов, что каждый из них за него до сих пор накатывает, рассказывая рыгая, икая и смеясь, что с точностью до ста процентов знает, что "стелс" сбил его зять, блядь, деверь, трахарь, брат, сват, или теща. Так же на просербских интернет ресурсах можно прочесть, что в тот же день в небе над Югославией было сбито еще пару "стелсов", сотня штурмовиков, личный самолет Клинтона, и даже Аллах. Годы идут, а количество "сбитых" натовских стервятников только увеличивается, и скоро достигнет миллиона.

                    Радость была настолько велика, что обсербы даже и не заметили, что одновременно с этим проебали практически полностью свои ВВС, и очередную республику союзного государства. Чуя, что его горемычной стране вот-вот опять проведут чем-то по губам Слабодаун взмолился о помощи к Россиюшке. Однако, последняя памятуя, что прошлый раз, вступив в войну на стороне братушек смогла выйти из нее только по частям ничего кроме двух ржавых БТРов и горстки алкоголиков в полосатых майках не прислала.
                    Ответить
                    • Все было кончено очень быстро. Косово ушло под ООНовский протекторат, Слабодауна на пинках вывезли в Гаагу, где он скончался несколько лет спустя в камере, пытаясь по доброй сербской традиции сделать себе аутофелляцию, и подавившись собственным хуем. Потом в свободное плавание ушла и Черногория, и Отсосербия вновь осталась одна. В целом девизом сербской нации можно было бы сделать одно краткое "Напрасно!"

                      Однако, если прочтя эти строки у вас сложилось впечатление, что хуже сербов может быть только червь-пидор, то это не совсем верно. Целые поколения тупых и агрессивных выгорели дотла в бесславных и ненужных войнах 20го века. Те же, что остались в живых похоже многое для себя уяснили. Во время "бульдозерной революции", когда Слабодауна вынесли из президентского дворца молодое поколение сербов, кажется, наконец разобралось, чем им все эти годы водили по губам, и продолжения не жаждет. Страна пытается установить ровные отношения с соседями, больше не сжимая за спиной кинжал, держит путь на вступление в ЕС, отказалась от большинства территориальных претензий. Так что виноводочным четникам только и остается, что проклинать Судьбу, американцев и жидов. И, ночуя посреди улицы в луже собственной блевотины и мочи видеть спутанные сны, где бравая Россиюшка дает кровавой нате пизды и помогает небритым уебанкам восстановить Югославию, где они снова будут всех холодно презирать и ходить по чужим городам с потертой "Заставой" в немытых руках и лихо заломленным меховым писсуаром на голове. Но этим мечтам, к счастью не суждено сбыться. И если вы меня спросите, что я испытываю к сегодняшней Сербии - ненависть или неприязнь, то я назову другое чувство на букву "Н" - надежда. То чувство, которое по отношению к Россысе я не испытаю никогда.
                      Ответить
                      • Эх, гуляй рванина https://www.youtube.com/watch?v=z_IOuNsJnfA
                        Ответить
    • Kerio и Exchange теперь недоступны русским админам
      Россияне не растерялись, сделали postfix+dovecot с нескучными обоями, и продают за бабло
      https://www.rupost.ru/

      Помоему это будущее российского айти. Слава Богу, есть прыщи, и всякие бзды. Что бы без этого делали вообще хз.
      Ответить
    • https://www.youtube.com/watch?v=vcFBwt1nu2U
      Ответить
      • я кстати очень рекомендую эт видео
        Это лучшее, что я видел в этом году
        Ответить
        • сука как перестать орать
          я хочу этого человека к нам на сайт
          Ответить
          • хотя шарпоблядь конечно гцблядь немного, и это конечно портит
            Ответить
      • чет пятнадцать минут и всё очень вымучено, хуй знает где смеяться и зачем вообще это выступление
        Ответить
        • Я выдержал пять минут островитянского говора и постоянного чавканья. Хотя, конечно, он честно сразу же заявил, что basic programmer, так что я сам виноват, что не выключил сразу.

          > и зачем зачем
          Ну он час послюнявил микрофон, а потом 3-4 дня шведский стол.
          Ответить
          • ой да ну идите вы все в дупу
            не нравится -- принесите другое
            Ответить
            • вообще постил скорее всего пару лет назад, но вот недооцененка

              https://www.youtube.com/watch?v=Bssy5oudW4o
              Ответить
              • Сделал шутер про чирей
                Сам еврей и гость еврей

                Хотя хуй знает, как он надеялся создать впечатление гостя, когда явно по кускам снималось в разных комнатах.
                Ответить
            • > другое
              Видео?
              Какие смузи )))
              Ответить
        • ты скучный
          Ответить
          • Нет, скучное - это намешать в котёл кучу разного, с чем сталкивались все, и объявить это смешным. Но гиперболы так не делаются. Соль юмора в том, чтобы он был неожиданным, противоречил повседневному уставу, но при этом был логически обоснован. Новости с панорамы про государственный контроль качества просрочки в магазинах потому и идут на ура. А здесь же с двумя первыми пунктами всё очень плохо.
            Ответить
            • чувак отлично показал говны современных япов, и сделал свой BS прямым наследнгиком самого хуевого языка

              налажал конечно местами, например unless не руби придумал, а перл. Ну и с Delete наложал (не надо вручную на стеке ничего удалять особенно если оно туды копируется) потому что гцблядь, а любая гцблядь сектант и пиздабол, и обязан врать, что "в С++ нужно все врунчую удалть", тут уж ничего не попишь

              ну и конечно про обоработку ошибок он ничего не хрюкнул, потому что в его любимом сишарпике с ней тоже крайне хуево (разве что tryFoo есть)

              остальное ок
              Ответить
    • Вот держите
      https://www.youtube.com/watch?v=qeojhZH6jBQ&t=843s
      Ответить
    • п о к а й т е с ь

      https://youtu.be/ARPyKQ0McU8
      https://www.peachpie.io/
      Ответить
    • А вам вообще нравится идея value и reference семантики?
      Напомню, что "value" означает:

      * Объект обычно копируется при передаче
      * Два объекта данного типа равны, если равно их внутренее представление
      * С объектом _обычно_ работают напрямую, без ссылок (технически говоря, он создается на стеке)

      Ref означает
      * Объект обычно хранится в куче, и работа с ним ведется через ссылку/указатель
      * Передают по указателю/ссылке
      * Два объекта могут быть не равны, даже если равны их внутренние представления

      Пример Ref тайпа -- крупный объект, представляющий заказ на сайте
      Пример Value -- int

      Отдельно интересует массив: он value или ref?

      Если вы пишите наС или С++, то сама постановка вопроса кажется вам глуповатой, но скорее всего в ващем коде есть "в основном reference" и "в основном value" типы
      Ответить
      • Иммутабельный Ref неотличим от Value.

        А вообще, конечно, после языков с амперсандами и звездочками переход на Java или ранний C# вызывает баттхерт "нафига упростили??? теперь непонятно ни фига. Почему string может быть null, int - нет, а массив вообще передается по ссылке?".
        Ответить
        • >Иммутабельный Ref неотличим от Value.
          см пункт пра сравнение
          Ответить
          • Да, точно. Просто подумал про "C" + "#" == "C#", а не про ("J" + "ava").equals("Java"). Ну то есть такой Ref тип, которы в меру возможностей языка ведет себя как Value.
            Ответить
            • вроде пиздухон так работает, там все по ссылке, даже число, даже небо, даже Аллах
              Ответить
      • Да. У меня в «PHP» это есть.
        Ответить
    • СУКА КАК ЖЕ Я НЕНАВИЖУ ЭТОТ ЕБАНЫЙ ФРОНТЕНД СТЕК
      node_modules
      чтобы блядь все зависимости слинковать это ебануться нужно
      package_lock блядь
      Да еиись оно конём всё
      Ответить
      • package.lock это хорошо, иначе у тебя не было бы репродюсибл сборок:)

        Линковка вебпаком это черная магия конечно, буткемп говорил есть менее анальные способы, но я забыл
        Ответить
        • Мне нужно было пробросить параметр в ссылку. И всё, блядь! Сейчас у меня 10+ измененных файлов ебаного реакта, затрагивающие 3 компонента. И это я ещё не закончил ебаться с их правильной линковкой. Я весь рабочий день потратил на эту хуйню
          Ответить
          • Сукаблядь, аж трисёт. Поэтому я за «РОТОЁБА». Поправил в html-ке ссылку и всё, блядь.
            Ответить
            • Я кстати давно говорю, что серьезный фронт по сложности уделывает многие бекенд стеки и некоторые десктоп приложения

              Количество технологий, которые надо понимать и интегрировать друг с другом там легко переваливает за десяток
              Ответить
              • Ссу на ваш react, reduct, webpack, tsx, node_modules, npm, npx, yarn и прочую поебень желтой мочёй.
                Ответить
                • rxjs, babel, grunt, typescript, tslint, jslint, mocha, karma, jasmine
                  Ответить
                  • Пись-пись
                    Ответить
                  • О, придумал! Наклею на дно утитаза логотип реакта. Ещё лучше: в офисе на писсуар наклею, чтобы не только я ссал. Где можно найти такие наклейки?
                    Ответить
                    • сходи на любую конференцию

                      на конференции обычно сидят хипстеры, у которых все ноутбуки заклеяны логотипами в четыре слоя
                      Ответить
                      • К сожалению, такие наклейки быстро под струёй отклеятся. Нужно что-то типа трафарета и балончика с краской. Но это уже согласовывать с офисом нужно, иначе вредительство ((
                        Ответить
                  • > grunt

                    gulp, ember, bower, broccoli, cake
                    Ответить
                    • enb, mimosa, sails, suitcss, postcss, lodash, bem
                      Ответить
                      • и еще вот https://www.npmjs.com/package/lerna-packer
                        Ответить
                        • Ох, чувак, не так быстро. Для этого я вечером литр кваса выпью, на эту хуйню стаканчика морса не хватит
                          Ответить
                          • а можешь пожалуйста еще вот сюда нассать:
                            https://i.postimg.cc/XqqWdY83/image.png
                            ?

                            Это не шутка, это реальный чекаут нидерландской транспортной компании NS
                            Ответить
                    • эмбер
                      Бенсон?
                      Ответить
                • У нас есть ReactGovno, ReductGovno, WebpackGovno, YarnGovno и так далее?
                  Ответить
              • Вот берем первую статью
                Там код
                https://pastebin.com/pRH8FkKi

                Это просто настройка ЛИНКОВКИ

                Но переусложненный у нас С++, не перепутай
                Ответить
                • > throwUnexpectedConfigError

                  Блять! Серьёзно? Это даже хуже ЙАЖИ с её throw new Throwable()

                  Столько говна написано чтобы МИНИФИЦИРОВАТЬ.
                  Ответить
        • > есть менее анальные способы, но я забыл

          Значит, фронт назвали фронтом по ошибке?
          Ответить
    • Давайте обсирать JAWA.
      Но с одним условием: конструктивные аргументы запрещены.
      Ответить
      • ты хуй
        Ответить
      • На логотипе JAWA изображена чашечка говна с говняными парами.
        Ответить
      • Что лучше, программировать на JAWA, или работать на китайском рынке 12 часов в сутки?
        Ответить
      • У меня брат однокласника работает в айти, он вообще в компах рубит пиздец, так он сказал что эта йава не нужна потому что она в интернете не работает
        Ответить
      • ЙАВА пиздец тормозная )))

        Вот жытбрейс всё на ява -- и там все тормозит, а VCSCode на JavaScript, и он летает))
        Ответить
        • в йаве же виртуальная машина, а это всегда тормоза
          Ответить
        • > конструктивные аргументы запрещены
          Ответить
      • Йава делает оракл, а это крупная корпорация
        Она все только ради денег делает, на простых людей ей ПЛЕВАТЬ!

        Связался с йажа -- стал по сути рабом оракла!
        Ответить
      • у нас была ява в инстике я там нихуя не понимал)))

        потом выучил ПХП и нормально работаю

        не понимаю, нафига вообще ява?
        Ответить
      • Стоит ли учить Java?
        Стоит ли учить Java? Есть ли у него какие либо перспективы в будущем? И вообще, что пишут на данном языке?

        Я бы не стал, т.к это довольно таки устарелый язык

        Приложения для андроида восновном



        Стоит, но с условием что хватит мозгов для того что бы его понять и осилить. Java не для людей с улицы

        https://otvet.mail.ru/question/229798481
        Ответить
      • В джаве все время нужно указывать какие-то типы, как в старых языках. На это тратится время.

        Современные языки (PHP, JavaScript) сами как-то умеют решать эту проблему
        Ответить
      • У меня яву ноускрипт блочит.
        Ответить
      • На джависта глянешь - креститься хочется
        Ответить
      • Ключевые слова не локализованы. Язык и библиотеку разрабатывает американская компания.

        Именно поэтому я за «1С».
        Ответить
        • разработчики, где локализация?? русского языка нет, габен верни деньги
          Ответить
      • А я за ЙАЖА. Если у тебя в приложении память потечёт, можно не париться, а смело посылать пользователей к Оралу, это они виноваты что гц кривой написали
        Ответить
        • Понятно почему яжа любят и принуждают к оралу.
          Ответить
    • Возьмём к сравнению языки, которые чаще всего противопоставляются Java: C#, Python, C/C++, JavaScript.

      На C/C++ можно написать что-угодно, но:

      1) Данные языки сложнее для изучения, чем Java. Соответственно, C/C++ девелопера тяжелее взрастить, чем Java разработчика.
      2) Программист С/С++ будет напрямую работать с памятью, которую потребляет разрабатываемое приложение, а это не только усложняет процесс кодинга, но и повышает риск фатальных ошибок а также время на разработку, которых тот же бизнес и банковские системы попросту не могут себе позволить.
      3) Далеко не каждый программный продукт нуждается в тех мощностях, проработанности и масштабах, которые ему предлагают С/C++. Чтобы забить небольшой гвоздь вам не нужен молот Тора, так ведь?
      Ответить
      • Я пью чай из чайника Рассела, бреюсь бритвой Оккама и смотрю в окно Овертона.
        Ответить
        • На лошадь Пржевальского.
          Ответить
          • кстати, правда, что Приживальский был папкой сталина?
            Какой багор )))
            Ответить
            • Уи-и-и!
              Ответить
            • Неизвестно, что произошло между путешественником Пржевальским и дикой лошадью, но в результате она получила его фамилию.
              Ответить
              • Приживальский был педофилом и это задокументировано. В каждой экспедиции у него числился молодой мальчик, значащийся как слуга.
                Ответить
    • Ведутся технические работы
      Это необходимо, чтобы Госуслуги работали лучше
      Зайдите на страницу чуть позже
      Ответить
      • Личный кабинет «Мосэнергосбыта» теперь тоже работает по расписанию. К счастью, они отрубают его с 23 до утра, так что вечером до 23 есть шанс в него зайти.
        Ответить
        • А Нацианальный Битторрент Трекер всё еще закрывается на учёт в каждый день в 5 утра?
          Ответить
        • О, у вас тоже.
          Интересно, там роботов должна подстраховывать мясная машина, чтобы, если что, быстро откатить транзакцию, или у них возникают баги в районе 00:00? Или по правилам пожарной безопасности в 11 часов сторож обесточивает помещение большим медным рубильником?
          Ответить
      • Ещё, кстати, бывает, когда личный кабинет «Сбербанк-онлайн» не работает...
        Ответить
    • Кто помнит термин "DHTML"?
      Ответить
      • Этот древний баззворд Майки форсили ещё в 90х, динамическое мудифицирование DOMHTML посредством скриптов в браузере.

        Блин, как вспомню, ужас. Ведь тогда даже консоли ошибок нормальной не было, не то что Firebug/Снгоме сонзо1е.
        Ответить
        • > в браузере
          Не совсем. Они форсили вместе с HTML Application с доступом к фейловой системе и прочим.
          Ответить
    • https://vk.com/wall-30666517_1792046
      Ответить
      • Фу, читать быдлобаблики. Я поскролил минуту — убожество.

        Похоже Fike не шутил про этот Carbon
        Google взялись за разработку замены C++.

        Стало известно, что компания активно развивает язык программирования Carbon, который позиционируется как пока что экспериментальная замена C++, расширяющая данный язык и устраняющая имеющиеся недостатки.

        Язык поддерживает базовую переносимость с C++ и может интегрироваться с имеющимся кодом на плюсах. Плюс ко всему язык предоставляет инструменты для упрощения миграции существующих проектов. Так что можно смело переписать на Carbon библиотеку и использовать её в существующем проекте на С++.

        Основные фичи Carbon:
        — Производительность, сопоставимая с С++.
        — Сохранение низкоуровневого доступа к адресам и данным на битовом уровне.
        — Переносимость кода, включая наследование классов и шаблоны.
        — Упрощение миграции между версиями.
        — Безопасная работа с памятью, защита от уязвимостей, вызванных обращением к области памяти после её освобождения, разыменованием нулевых указателей и выходом за границы буфера.

        1й комментарий:
        > они ж вроде golang с этими же целями начинали делать
        Ответить
        • Решил поискать связку: google+carbon

          Carbon Footprint | Google Cloud

          Google Cloud Carbon Footprint provides the carbon emissions of your cloud usage. Measure, report and disclose carbon emissions for ESG reporting.


          Если их действительно волнует carbon footprint Гуглу достаточно отключить всю слежку за пользователями.
          И перестать форсить все эти "умные" девайсы, чайники которым нужен wi-fi для "обновления" и стиралки, которые жрут по гигабайту, камеры которые шпионят и прочие девайсы передающие в облака терабайты данных.
          Ответить
        • >— Производительность, сопоставимая с С++.
          когда слышу такое, сразу вспоминю ASD77, у которого джаваскрипт работает быстрее С++. Такой сразу смех пробирает

          >— Сохранение низкоуровневого доступа к адресам и данным на битовом уровне.

          Слава Богу, будет УБ

          >— Переносимость кода, включая наследование классов и шаблоны.
          Слава Богу, нечитаемая митушня будет

          >, вызванных обращением к области памяти после её освобождения
          Слава Богу, шарики и юники будут. Может даже с автозанулением

          > они ж вроде golang с этими же целями начинали делать
          Ах, опять эти сказки

          * Го быстрый как и си (нет)
          * Йажа быстрый как и си бо жит (нет)
          * ДжаваСкрипт быстрее С++ (см выше)
          Ответить
          • Вот только что на примере рустни осознал, что сделать язык «быстрее чем Си» вполне достижимо.

            Достаточно просто в новый язык досрать на порядок больше невиданных ранее UB, чтобы ограничения не мешали компилятору оптимизировать код .

            Чтобы ещё больше случаев сводились к noop.
            Ответить
            • Я придумал новый язык, назову его Fe₂O₃

              Суть такова: побочные эффекты запрещены, вообще. Программа не имеет права изменять состояние или получать информацию из-за пределов абстрактной машины, на которой выполняется. Абстрактная машина является чёрным ящиком и узнать её состояние снаружи невозможно. Также абстрактная машина может считаться квантовым суперкомпьютеров, работающем как угодно быстро.
              Исходя из этого, любая программа эквивалента либо noop (если она завершается), или бесконечному циклу (если нет). Так как физические ограничения не дадут программе работать бесконечно, второй вариант отбрасываем.
              Недостижимая скорость исполнения, моментальная компиляция, математически доказанное отсутствие ошибок в программе — вот только малая часть отличительных особенностей Fe₂O₃!
              Ответить
              • Еще минимальный размер компилятора. Поскольку единственная операция машины это noop, то на ее кодирование нужно 0 бит. Посольку мы заранее знаем программу, мы можем распостранять её в уже скомпилированном виде, то есть файлом, размером 0 бит.
                Ответить
                • Поскольку у нас все файлы одинаковые, нам можно их не хранить. Да и один фиг они лежат внутри чёрного ящика и посмотреть на них нельзя.
                  Ответить
          • Когда же ты наконец сдохнешь! Сделай мир светлее - вскройся.
            Ответить
            • There is no reason to believe that if the ABI can’t be broken now, it can be broken later. People who need stability lag years behind the standard by quite a bit. So, if we don’t break ABI now, people would have been relying on a never-promised ABI for over a decade, maybe two. The simple fact that we had this conversation and voted not to break ABI tends to show that the ecosystem is ossifying and ossifying fast. Each passing day makes the problem a bit worse and more expensive
              Ответить
        • > Сохранение низкоуровневого доступа к адресам и данным на битовом уровне
          > Безопасная работа с памятью

          Какая биполярочка )))
          Ответить
          • Опечатались наверное:
            > Сохранение доступа к адресам и данным на бытовом уровне
            Ответить
          • Возможно unsafe опять
            Ответить
            • А вообще заебал маркетинговый булщит

              Двадцать лет я слышу, что си устарел и сейчас сделают НОВЫЙ ХОРОШИЙ язык, который его порвет

              Затем выкатывают какое-то говнище либо с ГЦ либо с "новыми сортами UB", по сложности превосхощягнее няшную, и опять все сосут
              Ответить
            • Это не unsafe.
              Ответить
      • Нам нужно больше безопасности
        Ответить
    • One solution is to migrate to other languages such as Rust, Kotlin, Swift or Go, but these languages are hard to migrate to, and in some cases have performance overhead. Carbon is a new language that aims to match the performance of C++ and maintain “seamless bidirectional interoperability,” as well as a gentle learning curve for C++ developers.

      The team also promise “some level of source to source translation” for C++ code. The project has parallels with TypeScript for JavaScript developers, or Kotlin for Java developers, though the comparison is not an exact one. Carbon is designed to be interoperable with C++ code and to make migration easy. The Carbon toolchain will support compiling C++ code.

      Why is C++ hard to improve? C++ itself started as a fork of C, and the C language is 50 years old, so it is not surprising that there is a lot of legacy. According to the Carbon team, the C++ designers have added rather than replaced language features over time, creating complex feature interactions.


      У шизов и тут Сищка виновата. Ну какое легаси?
      struct, который джависты до сих пор не могут осилить?
      Или линкер, который таки смогли осилить шарпеи с джавашнёй.

      Кроме кривоватых массивов там всё более-менее хорошо.
      Ответить
      • > seamless bidirectional interoperability

        Т.е. я смогу параметризовать крестошаблон классом из карбона? Охуеть!
        Ответить
        • Интересно как они добьются этой «bidirectional interoperability» если у них анскильные женерики, а в крестах тьюринг-полные шаблоны.

          Обещают поддержку и того и другого. Но это выглядит костылями обмазанными говном:
          > Carbon's generic programming support will handle both templates (matching C++) and checked generics (common in other languages: Rust, Swift, Go, Kotlin, Java, and so on).
          Ответить
          • Въебавшему минус - плевок в левый глаз!
            Ответить
          • > both

            Ну началось... Походу там язык уже в первой версии порвёт кресты по лёгкости изучения.
            Ответить
            • не заёбывай своими познаниями в хентае. Лучше послушай Рика Эшли https://www.youtube.com/watch?v=dQw4w9WgXcQ
              Ответить
    • Seamless interop where existing, unmodified C++ APIs are made callable from safe Rust requires the C++ code to follow borrow checking rules at the API boundary.

      To reduce the amount of Rust-side compile-time checking that makes interop difficult, C++ APIs can be exposed to Rust with pointers instead of references. However, that forces users to write unsafe Rust, which can be even more tricky to write than C++ because it has new kinds of UB compared to C++; for example, stacked borrows violations.


      «new kinds of UB compared to C++» это что-то новенькое.

      https://github.com/carbon-language/carbon-lang/blob/trunk/docs/project/faq.md#why-is-adopting-rust-difficult-for-c-codebases
      Ответить
      • Хм, т.е у них ещё более аггрессивная оптимизация чем у няшной т.к известно кто владеет ссылкой и можно не флашить регистры там где не надо?
        Ответить
        • Да я уже точно не помню читал-читал доку раста, но там какая-то скучная питушня, меня в сон стало клонить, я так и не дочитал её.

          Вроде речь о Сишном restrict, только автоматическом.
          Там всё как-то заумно. Они вроде пытались *доказать* что мутируемые адреса не пересекаются, потому можно оптимизировать.

          https://plv.mpi-sws.org/rustbelt/stacked-borrows/paper.pdf
          https://plv.mpi-sws.org/rustbelt/stacked-borrows/appendix.pdf

          > можно не флашить регистры там где не надо
          Речь об алиасинге, верно?
          Ответить
          • > Речь об алиасинге, верно?

            Ну я вот так себе представляю:
            p.x = 42;
            f();
            return p.x;
            Кресты здесь обязаны флашнуть и перезагрузить значение х т.к. функция может его помять (если ссылка наружу никуда не светится -- может быть и не обязаны). А раст может забить на это т.к. знает, что в данный момент у р есть единственный владелец и функция ничего не помнёт.
            Ответить
            • Кстати про restrict они таки в самом конце пишут. Я совсем немного не дочитал.

              Since C99, the C language knows the restrict qualifier for pointers,
              an explicit annotation that can be used by the programmer to give non-aliasing information to
              the compiler. This qualifier indicates that accesses performed through this pointer and pointers
              derived from it cannot alias with other accesses. One common application of restrict is in tight
              numerical loops, e.g., matrix multiplication, where assuming that the output matrix does not alias
              either of the input matrices can make the difference between a fully vectorized loop using SIMD
              (single instruction multiple data) operations and purely scalar (unvectorized) code.
              Conceptually, restrict is closely related to Stacked Borrows. In fact, the Rust compiler (which
              uses LLVM as its backend) used to emit the LLVM equivalent of restrict as annotations for
              mutable references in function argument position.
              However, the exact semantics of restrict is unclear, in particular when considering general
              pointers and not just function arguments. (Function arguments are easier because there is a clear
              notion of łscopež that one could use to say for how long the aliasing guarantee must hold.) Even for
              function arguments, uncertainty in the semantics led to several LLVM bugs [Gohman 2015; Popov
              2018], due to which this annotation is currently not emitted by Rust for mutable references.
              We are not aware of any operational formalization of restrict, nor any tool to check for
              violations of its properties, but we could imagine that some of the ideas from Stacked Borrows
              could be useful in such a project.
              Fortran. Loosely related to C’s restrict are the aliasing rules of Fortran [ANSI 1978], which
              disallow function parameters to alias (unless the programmer specifically marks them as potentially
              Ответить
        • Да они наезжают что в Сишке и крестах type-punning не такой.
          Aliasing слишком ограничивающий, итд.

          The first CompCert memory model [Leroy and Blazy 2008] formalizes a very strong operational
          version of the strict aliasing rules that entirely disallows type-punning through unions. However,
          this is not exploited for the purpose of program analyses or transformations. (Later versions of
          CompCert use a simpler memory model that does not impose any strict aliasing rules [Leroy et al.
          2012].) Krebbers [2013] gives another operational account of strict aliasing, with rules for type-
          punning through unions that are based on the GCC developers’ interpretation of the C standard.
          He also shows a basic non-aliasing łsoundnessž theorem, but no compiler transformations.
          Long-standing compiler bugs in both GCC [Hazeghi 2013] and clang [Fraine 2014] indicate
          that exploiting strict aliasing rules for optimizations is tricky and easily leads to miscompilations.
          Moreover, many C programmers consider the strict aliasing rules to be overly restrictive, leading
          to many strict-aliasing violations in real-world C code [Memarian and Sewell 2016]. For these
          reasons, many large projects, including the Linux kernel, outright disable type-based alias analysis,
          essentially opting-in to a version of C with less undefined behavior and fewer optimizations.

          Moreover, type-based alias analysis is comparatively weak. In particular, it cannot be used to
          reason about unknown code; the compiler must know the types of both memory accesses involved to
          determine if they might alias. In contrast, as we have shown, Stacked Borrows enables optimizations
          involving unknown code.


          > many C programmers consider the strict aliasing rules to be overly restrictive

          Мне чёт страшно, если дrustухи вдруг начнут ебошить "оптимизации" алиасинга.

          Они нормальный компилятор не могут сделать, нормальную викторизацию (всё что есть воровано из шланга), нормальную обработку ошибок.
          Ответить
          • >disable type-based alias analysis, essentially opting-in to a version of C
            > with less undefined behavior and fewer optimizations.

            Сишные UB для них «overly restrictive».

            Они нормальный компилятор до сих пор не могут сделать, нормальную викторизацию (всё что есть воровано из шланга), нормальную обработку ошибок, нормальное выпиливание проверок, которые раздувают бинарь.

            А хотят взяться за такую опасную и сложную штуку как оптимизация алиасинга.

            Напоминаю что ранее предлагалось пихать «безопасный» Rust в ядерные реакторы.
            Ответить
    • https://cor3ntin.github.io/posts/abi/#abi-discussions-in-prague
      ABI discussions in Prague

      In Prague the ABI discussions lead a series of polls, that, unfortunately, are as revealing as tea leaves, and so depending if you are a glass half full or glass half empty kind of person, you might interpret these results differently.

      The basic direction is:

      WG21 is not in favor in an ABI break in 23
      WG21 is in favor of an ABI break in a future version of C++
      WG21 will take time to consider proposals requiring an ABI break
      WG21 will not promise stability forever
      WG21 wants to keep prioritizing performance over stability.

      In all these polls, there is a clear majority but no consensus. The committee is, somewhat unsurprisingly, divided.
      Reading the tea leaves

      The obvious flaw in these polls is that we haven’t clarified when we would want to break ABI.
      C++23? Nope, this is a definitive no.
      C++26? Some people definitively intended to vote for that, others probably voted to break ABI in C++41 or voted to break ABI once they are retired or otherwise do not have to deal with their current project. No way to know. The exact poll mentioned “C++SOMETHING”. How helpful.

      There is no reason to believe that if the ABI can’t be broken now, it can be broken later. People who need stability lag years behind the standard by quite a bit. So, if we don’t break ABI now, people would have been relying on a never-promised ABI for over a decade, maybe two. The simple fact that we had this conversation and voted not to break ABI tends to show that the ecosystem is ossifying and ossifying fast. Each passing day makes the problem a bit worse and more expensive


      Плох тот день, когда хипстеру не дали поменять API или испортить ABI принудив всех всё переконпелировать.

      > voted to break ABI once they are retired or otherwise do not have to deal with their current project

      А это очень грамотная позиция.
      Работает — не трогай. А после нас хоть потом.
      Ответить
      • Ах да, по теме топика:

        > Why do we want to break ABI

        > There are a few Quality-of-Implementation changes that could be enabled by an ABI break

        > Making std::regex faster (it is currently faster to launch PHP to execute a regex than it is to use std::regex
        Ответить
      • Вот они на полном серьёзе обсуждают ломать ABI или не ломать. А на деле всем похуй, ведь никто никогда не полагается на крестовое ABI. Либо оно сишное либо всё собрано одним и тем же крестоконпелятором...

        Каким наивным мазохистом надо быть, чтобы полагаться на совместимость крестоаби?
        Ответить
        • К сожалению, линкер не смог найти экспортированный символ
          _ZN9wikipedia7article8print_toERSo
          Ответить
    • https://plv.mpi-sws.org/rustbelt/stacked-borrows/paper.pdf

      7.2 Coq Formalization
      In this paper, we have given informal proof sketches of several representative optimizations enabled
      by Stacked Borrows. To further increase confidence in the semantics, we formalized its operational
      rules (6k lines of Coq, including proofs showing some key properties of the operational semantics)
      and turned our proof sketches into mechanized correctness proofs of all example transformations
      mentioned in this paper. To reason about transformations in the presence of unknown code, we
      built a simulation framework (5k lines of Coq) based on open simulations in the style of Hur et al.
      [2012].

      We have described Stacked Borrows, an operational semantics encoding aliasing rules for Rust’s
      reference types. Our goal was to exploit the rich alias information encoded in those types in order
      to enable intraprocedural optimizations, whose validity we have proved formally in Coq.
      The core idea of the model is to implement a dynamic version of the borrow checker, the part of
      the Rust type checker that enforces the aliasing rules for references in safe code. This allows us to
      extend the scope of the analysis to also cover unsafe code manipulating raw pointers, essentially
      łextrapolatingž borrow checking from the safe fragment of Rust to the full language.


      Пропаганда:
      «Ма-те-ма-ти-ки доказали»
      «6k lines of Coq»
      «Даже unsafe будет безопасен»

      Реальность:
      «Чрезвычайно длительное время компиляции»
      «Трудности с раскруткой компилятора»
      «Присутствуют CVE»
      «По-прежнему сливает Си и С++»
      Ответить
    • Why I hate Rust programming language? 
      
      https://yewtu.be/watch?v=ksTyCQwHGro

      Сектант негодует:

      One such case is this disgusting video: "Why I hate Rust programming language?" Why I hate Rust programming language? - YouTube which is so full of misinformation and misunderstanding that it's impossible to comment on it. Worse still it goes to insult and abuse Rust developers, picking them out by name even. Really, do not watch it.
      Ответить
      • 7:40

        Смотрит в godbold почему происходит binary bloat.

        Извините, но комилятор дrustни действительно очень тупой:
        https://godbolt.org/z/PGnns5o5n
        Ответить
      • 33:33
        Ахаха. Открыл сорцы redox-os. Там сплошные unsafe
        Ответить
    • https://news.mail.ru/politics/52322789/

      Власти Запорожья назвали примерные сроки референдума о статусе региона

      Именно поэтому я за «ЗНР».
      Ответить
    • Brazilian influencer ends up in wheelchair from holding in her farts

      https://nypost.com/2022/07/08/brazilian-influencer-vii-tube-injured-from-holding-in-farts/
      Ответить
    • Охуеть
      Ответить
      • Охуел что ли?
        Ответить
        • Не заебался ещё вручную наматывать сопли на кулак? Купи намоточный станок, например СРМ.
          Ответить
          • Чтобы окислить кошачью мочу и убрать собственно ее вонь, можно пропитать ковер формалином, уксусом либо нашатырным спиртом.
            Ответить
    • Пыха всему голова
      Ответить
    • Без брута, не вытащишь рыбку из прута.
      Ответить
    • Как можно объяснить анскильность питухов, если письмо от их интернет-магазина попадает в спам?
      Ответить
      • Вообще было бы довольно просто, но всё-таки я никогда интернет-магазинов не писал
        Ответить
        • Наверное от типа сайта тут мало зависит. Достаточно забыть прописать в DNS записи для почты.
          Ответить
          • Алхимик Бранд обнаружил фосфор, выпаривая мочу...
            Ответить
      • Есть целая пачка причин. Лучше всего отправить от них письмо на mailtester, и проверить.

        Обычные причины таковы:
        * IP в спам-листе (погугли, есть тулы для проверки IPшников)
        * Сломаны DKIM или SPF (тогда ты точно идешь в спам, а часто и просто нахуй)
        * Насрано в обратной зоне
        * Текст какой-то уж очень подозрительный, и малоприятен спамотсоссину
        * Нету хотя бы пары mime: с текстом и HTML
        * MX записи нету для домена


        Покажи заголовки письма
        Ответить
        • Да какая разница. Админ мог просто сам себе письмо отправить и это выяснить, но его либо нету, либо ему похуй.
          Ответить
          • Скорее всего админ обычная вебмартышка, которая даже примерно не представляет, как рабоатет электронная почта
            Ответить
        • Ахтунг!
          Мы окружены! Всем срочно занять позиции! Повторяю: мы окружены!
          Ответить
        • Давайте мочевину выпаривать!
          Ответить
      • как можно объяснить анскильность питухов, если они дают создать в своём интернет-магазине аккаунт с почтой с алиасом, но потом на этот адрес не могут отправить письмо?
        Ответить
    • Если бы PHP был женщиной, что бы вы сделали?
      Ответить
    • Бывает так, что сайт секунд пять грузится, а затем показывает крутилку, и снова грузится. Такие сайты нужно обссыкать и сжигать вместе с разработчиками, разумеется
      Ответить
      • Сначала грузится не сайт, а крутилка.

        > обссыкать и сжигать
        Выпаривать мочевину.
        Ответить
      • Бывает так, что guest6 секунд пять грузится, а затем показывает hate speech, и снова грузится.
        Ответить
        • А НЕ ПОШЛО БЫ ОНО ВСЁ НАХУЙ?
          Ответить
          • – вы нахуй идёте?
            – нет, только показываю
            Ответить
        • https://www.youtube.com/watch?v=DgdP5U28jHc
          Ответить
        • ничего не могу поделать. Я ненавижу примерно все современные технологии
          Ответить
    • линус родил новое ядро с арма и мака
      https://lore.kernel.org/lkml/CAHk-=wgrz5BBk=rCz7W28Fj_o02s0Xi0OEQ3H1uQgOdF [email protected]/T/#u
      Ответить
      • блядь, сколько там кетаёз в контрибьюторах
        Ответить
        • Скажи спасибо, что не негритосы
          https://www.youtube.com/watch?v=Qkuu0Lwb5EM
          Ответить
          • интересно, что эта песня почему-то была в одной из полнометражек Rugrats
            Ответить
          • негритосы не коммитят в ядро из за белого расизма, суперматизма и капитализма

            Скоро в git всотроят паскахльное яцо, которое будет удалять репозитории, если минимум 30% коммитов не сделали негры-трансы из развизвающихся стран

            Ну а что делать? Общество равенства само себя не построит
            Ответить
      • и никто при этом не говорит что следующее - шестёрка, а только дрочат на сраный мак
        Ответить
        • И никто при этом не говорит что в следующее в ядро могут завезти 40к строчек rustа, а только дрочат на циферки и сраный мак.

          https://lore.kernel.org/lkml/[email protected]/T/

          Да-да-да, unsafe там есть практически в каждом файле (кроме сишных).
          Ответить
          • > кроме сишных

            Сишка сама по себе полный unsafe.
            Ответить
            • Эти досужие рассуждения исходят из навязанной пропагандой ложной посылки, что rust представляет некий «safe».

              Там конечно ревьюверам стоило ответить в таком духе: когда уберёшь из патча все unsafe, тогда и посмотрим
              Ответить
            • >Сишка сама по себе полный unsafe.

              Тут мы с вами видим пример пропаганды. Автор утверждает, что якобы писать на ПэХп
              Пэ более безопасно, чем на си

              Но что есть безопасность? Ошибка в программе на пехапе точно так же приведет к падению программы, а дыры в безопасности приведут к RCE.

              Чем же код на пехапе безопаснее кода на си?
              Ответить
              • В «PHP» нет работы с указателями, там нельзя случайно распидорасить стек и засрать оперативку.
                Ответить
                • Со времен появления защищенного режима, засёр стека создает проблемы только для твоего приложения (если ты не пишешь для kernel mode, конечно)

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

                  Случайно нельзя, а вот специально можно: https://habrahabr.ru/company/mailru/blog/340242/
                  Ответить
                  • какой guard page )))
                    Ответить
                  • А на шаред хостингах общий апач или per site?
                    Если первое, то это багор.
                    Ответить
                    • что значит "per site"?

                      Общий кмк
                      Ответить
                      • Ну приведенный в статье код крашит "PHP". То есть он крашится для всех пользователей?
                        Ответить
                        • Я могу рассказать, как это было 15 лет назад

                          Был главный апач, который форкал сколько-то потомков для обработки запросов

                          mod_php выполняется в адресном пространстве апача (потомка), так что краш его приведет к крашу процесса, да

                          Но главный процесс его сразу же перезапустит. Какие-то коннекты порвутся, а кто-то и не заметит

                          Как сейсас работает -- хз
                          Ответить
                          • Не просто коннекты порвутся. У кого-то может быть написано
                            mysql_query("UPDATE dengi SET rubli=${x + 500} WHERE user=vasya");
                            mysql_query("UPDATE dengi SET rubli=${x - 500} WHERE user=petya");

                            И где-то посередине кто-то крашнет "PHP".
                            Ответить
                            • Какой кошмар! Что же делать?
                              Неужели человечество не придумало такой штуки, чтобы изминения в базе были как-бы атомарными? Чтобы в случае падения она как-бы сама откатывалась на предудщее значение?

                              Я спрашивал знакомых пхпшников, говорят нет такого
                              Ответить
                    • Некоторые хостинги позволяют создавать файл .htaccess per directory. А сам индеец общий.
                      Ответить
                • безуказательная и потокобежопашная обёртка над C..
                  Ответить
          • сука
            Ответить
            • не сука, а rust
              Ответить
              • а они это так назвали чтобы потом шутить "за мной не заржавеет", да?
                Ответить
                • Не в этот раз, дружёк. За тобой уж точно заржавееть, все эти трупные истечения очень коррозивны.
                  Ответить
    • /start
      Ответить
    • Вотс гоинон?
      Ответить
    • https://vk.com/wall-72264719_108721
      Ответить
      • У джанго не все хорошо, но пых даже близко там не лежал, это просто другой уровень развития
        Если джанга это хромой гомосапиенс, но пхп это крепкий гомоэректус
        Ответить
      • какие-то наборы звуков в комментах
        я даже ХЗ как это комментировать

        У одного раз в пятилетку новые языки (Сколько лет питону и пхп?)
        У другого и вовсе

        Евгений, ну есть плюсы. Писать на них бдсм гей секс с элементами копро, под капотом у питона плюсы, облегчают и ускоряют процесс разработки новые языки. Но вы конечно можете писать на Assэмблере


        Сразу видно, что ни плюсов, ни асемблера, ни программирования человек не знает
        Ответить
        • > У одного раз в пятилетку новые языки

          только дедушка бейсик был хороший язык

          > какие-то наборы звуков в комментах

          Что вы хотите от интернет-пользователя в 2022, интеллекта?
          Ответить
          • ты порядок слов напутал, нельзя так с классикой

            >от интернет-пользователя
            группа в ВК посвященная программированию это как группа в ответы@mail.ru посвящнная программированию
            Ответить
            • > ты порядок слов напутал, нельзя так с классикой

              Иначе ритм сбивается.
              Ответить
        • На непрофильных сайтах типа вкшечки таких выёбывающихся дебилов дохрена. Что неудивительно.
          На профильных они тоже встречаются, но всё же чуть реже.
          Ответить
          • Причем тут данниг крюгер же. Гопник сплёвывая сквозь зубы говорит с презрением о том, в чем даже примерно не разбирается.

            Чем-то это напоминает сёмино ПРЫЩИ ГОВНО
            Ответить
            • Так он-то думает, что разбирается.
              Ответить
            • Как будто это не так и оемы не из соображений экономии связываются с херовой имитацией уних.
              Ответить
    • В подмосковье сегодня денацифицировали: очистили от дугинского помета. Слава неведомым партизанам!
      Ответить
      • ждём лицемерно-слепого всенародного воя про преступников, совершающих немыслимое, недопустимый терроризм, про трагедию и ни с чем не сопоставимую потерю
        Ответить
        • а также возмущение хахлами, которые недостаточно скорбят, как с глинкой
          Ответить
        • https://t.me/redakciya_channel/10505
          Ответить
          • с симоньян порвался
            Ответить
            • в поиске центров принятия решений главное не выйти на самих себя
              Ответить
            • Порвался с мантры
              ДАННОЕ СООБЩЕНИЕ (МАТЕРИАЛ) СОЗДАНО И (ИЛИ) РАСПРОСТРАНЕНО ИНОСТРАННЫМ СРЕДСТВОМ МАССОВОЙ ИНФОРМАЦИИ, ВЫПОЛНЯЮЩИМ ФУНКЦИИ ИНОСТРАННОГО АГЕНТА, И (ИЛИ) РОССИЙСКИМ ЮРИДИЧЕСКИМ ЛИЦОМ, ВЫПОЛНЯЮЩИМ ФУНКЦИИ ИНОСТРАННОГО АГЕНТА

              Наверное, рановато рассуждать про устрашение, если вот это не коробит.
              Ответить
          • отлично:)
            Ответить
      • А есть такой же, только ролл дугина?
        Ответить
      • Какой кошмар (((
        Надеюсь, у них всё будет в порядке, и папа всё таки увидится с дочкой!
        Ответить
        • я всему философскому и социологическому факультету МГУ желаю как можно скорее присоединиться к своей сотруднице
          Ответить
      • https://vk.com/wall18631635_9560
        Ответить
      • не поверите кто выступил с невероятным тейком

        https://nitter.fdn.fr/hikhihippie/status/1561305864316796929
        Ответить
        • я, безусловно, фриквеганкафе сочувствую (хотя и опять забыл в чем там проблема)

          а фашисты сочувствуют фашисту дугину, все логично

          просто некоторые фашисты зачем-то называют себя либералами
          Ответить
          • > фашисту дугину
            > Dugin was an anti-communist dissident during the 1980s
            > Dugin co-founded the National Bolshevik Party with Eduard Limonov
            я даже не поленился и поел говна какой-то черномазой с NPR:
            > in Dugin's case, he felt that the Russian Orthodox Church was destined to rule as an empire over all of Europe and Asia
            > фашисту

            https://files.catbox.moe/fsa3zk.jpg
            Ответить
    • Ебать мне надо для рулинга сочинить резюме

      Помогите мне сочинить резюме
      Ответить
      • ДА ПОШЁЛ ТЫ НАХУЙ!
        Ответить
        • А если серьезно? Там говорят можно дать ссылку на линкдин
          Но у меня нет линкдин
          Я могу дать ссылку на https://govnokod.ru/user/67780 , но я хз -- прокатит ли
          Ответить
      • Что за рулинг?
        Ответить
        • Нидерландское королевство забирает у тебя примерно все деньги в качестве налогов
          Но если ты никогда тут не жил, то тебе в качестве исключения разрешают 30% зарплаты освободить от налогов на три кажется года

          Для этого надо предоставить кучу бумаг, в том числе рассказать, чем ты тут занимаешься
          А для этого нужно резюме
          Ответить
          • Ik ben een software ontwikkelaar

            Я не понимаю на самом деле что именно тебе сложно рассказать. Пишем софтвер, софтвер нужен для инноваций, в том году я работал в компании, которая за год разрослась настолько-то, а я там чинил вот такой вот сервис, им воспользовались семь миллионов раз за год / месяц / неделю / день / час / минуту.

            > Нидерландское королевство забирает у тебя примерно все деньги в качестве налогов

            Не забудь про скидосы, они там не бог весть что, но на деле ты не все 37% платишь.

            https://www.belastingdienst.nl/wps/wcm/connect/bldcontentnl/belastingdienst/prive/inkomstenbelasting/heffingskortingen_boxen_tarieven/heffingskortingen/heffingskortingen
            Ответить
            • спасибо

              у нас релокейшенпетух вообще советы дает, но у меня так-то 49% отжимают(((
              Ответить
              • > у нас релокейшенпетух вообще советы дает, но у меня так-то 49% отжимают(((

                Ебать ты жирно живешь! У меня задача вообще до этого порога добраться.

                Если я правильно понял, то отнимают у тебя не 49.5%. До порога в около 70к евро у тебя снимают 37%. А 49.5% у тебя снимают только на превышение этого порога, что весьма разумно (иначе была бы ситуация, когда получаешь больше, но меньше). Вот держи:

                https://thetax.nl/?year=2022&startFrom=Year&salary=75000&a llowance=0&socialSecurity=1&retired=0&ru ling=0&rulingChoice=normal
                Ответить
                • блядь))) я не знал, что там шкала прогрессивная. Ну с другой стороны и квартир за такие деньги уже нет, за какие ты небось снял

                  Я посчитаю по калькулятору, спасибо. Цифиру налога мне бухгалтер сказал
                  Ответить
                  • Я живу в студии и не смогу снять ничего другого минимум до нового года, потому что у меня де-факто нет дохода.

                    В НЛ почему-то никто не ссылается на закон, поэтому зачастую сложно понять, что и как применяется. Про прогрессивную шкалу надо перепроверить, но калькулятор выше считает по ней.
                    Ответить
                    • Я живу в евродвушке (как студия, но с отдельной спальней) и считаю, что мне крупно повезло с ценой еще, потому что цены взлетели пиздец

                      коллеги по 2К снимают и охуевают.

                      А как ты умудрился без дохода? ты работаешь же?
                      Ответить
                      • Работать работаю, а вот легальные основания для получения денег появились только сейчас. Без паспорта было не произвести некоторые операции. Я ещё хуй знает не охуеет ли налоговая от того, что я разом получу зп за полгода, которые я типа не числился в статусе ИП.
                        Ответить
                    • Всё-таки де-юре
                      Ответить
            • > все 37%
              А ты 21% не забыл?
              Ответить
          • А в НД тоже больше платишь налогов, если не женат и нет детей?
            Ответить
            • вроде бы ойициального налога на яйца тут нет, но с другой стороны, если у тебя куча детей и жена с ними сидит, то наверное ты можешь получить какие-то послабления
              Ответить
              • > послабления
                – какой отрицательный налог на яйца )))
                Ответить
        • Когда суют рыльце в пушку туго и добывают вкусный трюфель.
          Ответить
          • забил заряд я в тушку Пуго
            (шутка для олдов)
            Ответить
    • https://techrocks.ru/2018/11/02/50-questions-for-tech-interview/

      1. Массивы
      Главный плюс такой структуры данных, как массив — он обеспечивает быстрый поиск сложностью О(1)
      Ответить
      • Дали какому-нибудь студенту статью перевести — он и перевёл как смог: вбил в «Google Translate» слово «lookup», увидел в результате «искать» и спокойно его вписал.
        Ответить
      • >>> Foxter 19.04.2019 at 13:35
        >>> Что — то у вас решения только для Java и то некоторые (поиск пропущенного числа в массиве) с помощью встроенных Java — библиотек. Можете дать ссылки на алгоритмические решения, тогда любой сможет переложить их на интересующий их язык.
        Ответить
    • https://pbs.twimg.com/media/FakvAa4XgAELLJS?format=jpg&name=900x900
      культурная столица
      Ответить
      • Какая романтика )))
        Ответить
        • сводил его стертёга
          на выставку расчленингога
          Ответить
        • Можно еще над мойкой посмеяться
          (это река Мойка такая, если кто не помнит случай, как в ней мужик утонул)
          Ответить
          • Я давно смеюсь. Как можно было так назвать реку?
            Ответить
            • https://yandex.ru/maps/2/saint-petersburg/geo/reka_tarakanovka/141343706
              Ответить
            • У нас еще речка-говнотечка есть
              Она же муринский ручей
              Ответить
    • На сколько ок менять const объект (через mutable), сохраняя кэш?
      Например,
      #include <iostream>
      #include <map>
      #include <string>
      
      class Perekatnik {
      public:
          size_t GetReservedLength(std::string name) const {
              name = "Petuh " + name + " kokoko";
              if (cache.count(name)) {
                  return cache[name];
              }
              return cache[name] = name.size();
          }
      private:
          mutable std::map<std::string, size_t> cache;
      };
      
      int main() {
          Perekatnik iso;
          std::cout << iso.GetReservedLength("ISO") << std::endl;
          std::cout << iso.GetReservedLength("ISO") << std::endl;
      }


      Или я буду пидором считаться за такое?
      Ответить
      • Вообще, для того оно и создавалось, чтобы всякие кеши, ленивые вычисления и прочая хуйня работала в const-контексте.

        А у тебя кеш уникален для каждого инстанса?
        Может, его статичным лучше делать?

        Энтерпрайз-питухи посоветуют сделать отдельный InstanceCacheProvider, и дёргать его как instanceCacheProvider.getRecord(*this, name)
        Ответить
        • а если Perekatnik iso будет const?
          Ответить
          • А ты попробуй. Всё будет работать. mutable это такой "анти-конст".
            Ответить
            • (я не топикстартер)

              Если я объвлю Перекатника константным, то компилятор не получит права разместить его в неизменяемой памяти, например?
              Ответить
              • Компилятор имеет право на всё что угодно, пока это не меняет видимое* поведение программы. У const-объекта можно изменять mutable члены. Компилятору нужно сделать, чтобы это работало. На практике это значит, что любую самую простую константную структуру с мутабельным членом компилятор не будет размещать в readonly памяти.

                *видимое по мнению стандарта с++
                Ответить
                • А если я перекатчика вынес в отдельную единицу трансляции, то как он узнает, что там внутри что-то мутабельное? Или это часть как-бы аби?

                  Ну тоесть в petih.a / petuh.lib не просто структура на N байт, но мутабельная структура
                  Ответить
                  • Ну структура описана в petuh.h, все приватные поля компилятору видны. Так что часть ABI, как, например, и размер структуры.

                    Кстати, наверное, поэтому mutable может отличаться от просто const_cast(this) , во втором случае действительно может случиться внезапный ЧПОК из-за размещения в ридонли.
                    Ответить
                    • Все верно, так и есть. Это код методов компилятор видеть не обязан, а структуру обязан (если приватные кшики не спрятаны через пимплы всякие)

                      У нас в пхп просто нету никаких структур, потому я и затупил
                      Ответить
    • https://vk.com/wall-72495085_1361094
      Ответить
    • Можно ли передать в лямбду не-const объект по значению?
      [putih = std::move(pituh)]() {
          pituh.Length++;
      };
      Ответить
      • Да, можно. Вот ты переместил, например. Можно сделать [=]{} и передать все (на самом деле, только используемые внутри) доступные переменные по значению, можно сделать [pitux]{} и скопировать питуха, можно [x=pitux]{} и скопировать питуха с другим именем.
        Ответить
        • Приведенный мной код не рабоатет. Я не могу менять объект pituh. Как исправить?

          #include <iostream>
          
          struct Pituh {
              int Length = 0;
          };
          
          int main() {
              Pituh pituh;
              ([pituh = std::move(pituh)] {
                  pituh.Length++;
              })();
              return 0;
          }
          
          
          <source>:10:21: error: read-only variable is not assignable
                  pituh.Length++;
                  ~~~~~~~~~~~~^
          1 error generated.
          Compiler returned: 1
          Ответить
          • А, тебе не просто неконстантное значение захватить, тебе его ещё и менять надо. Тогда сделай лямбду мутабельной: [putih =
            std::move(pituh)] mutable {
                pituh.Length++;
            };

            По умолчанию лямбда константная, и члены у неё константные.
            Ответить
            • Спасибо!
              Ответить
            • μ-таблица
              Для тех, кто тоскует по Mupad
              Ответить
            • (другой питух) зачем нужны мутабельные/немутабельные лямбды?
              Для каких-то оптимизаций?

              Питуз пишет: " function object should produce the same result every time it's called."

              Это приятное, хорошее свойство (хотя конечно это пиздеж полный ,потому что поменять глобальный стейт старого говна я всё равно могу) но зачем оно лямбде?
              Ответить
              • > зачем оно лямбде

                Защита от дурака. Функторы довольно часто копируют и если у них будет мутабельное состояние, то могут получиться неприятные эффекты.
                Ответить
                • Верно ли я понимаю, что С++ почуял тендецию "делать всё иммутабельным, если явно не запрошено обратное"?

                  Понимание ценности иммутабельности пришло в мейнстрим-помойку из чистой функционалочки вроде, и коко со свифтом строились уже на ней (а йажа с шарпом -- нет)
                  Ответить
                  • Не, вроде бы просто конкретный кейс прикрыли, на котором 99% получало граблями по ебалу ещё до появления лямбд...
                    Ответить
    • Чем PHP отличается от PHD? Что круче?
      Ответить
      • PHP учат те, кто не смог выучится на PHD
        Ответить
        • Диссертацию на соискание PHD пишут те, кто не смог зарабатывать с помощью PHP.
          Ответить
      • поскольку мне не известны PHD в области деланья сайтов на вордпрессе, рискну предположить, что ПХП всё таки круче
        Ответить
      • Есть хороший сайт, который позволяет в течении 5 минут научиться работать с PHP. Я его скачал, установил, и даже написал простейший скрипт. Но все равно не могу понять, чем он отличается от PHP PHP и PHP-Haskell - это два разных языка. Они имеют много общего, однако их синтаксис, семантика, компилятор и т.д. разные, что делает невозможным их совместное использование. Их можно использовать в одном проекте как разные языки. Если вам нужен PHP, то можно установить фреймворк PHP-Hassel.
        Ответить
    • https://vk.com/wall-72495085_1364118
      Ответить
    • А кто я? Я по жизни джун. Я получал знания от практики. Сначала от эфемерной практики ради процесса для себя, а потом, когда перестал бояться сделать что-нибудь не так - собрался с духом и поменял работу, которая дала мне "вызов" и этим "вызовом" вывела из зоны комфорта. И тут оказалось, что проекты open source даже очень могут помочь, а если там есть баги, которые мешают решить задачу, то всегда можно отреверсить код и поправить баг (ну, на крайний тяжелый случай поставить костыль), а потом написать в багтрек и дождаться исправлений. Упражнения периодического (не часто, иногда) реверса кода на разных ЯП волей неволей наполняли моцк информацией, которая потом, порой через года, всплывала в самый подходящий момент. Изучал ли я теорию программирования - ответ нет. Пытался ли изучать - ответ да. Поэтому рассуждения о высоких материях моделей, замыканий, трейтов, паттернов частенько ставят меня в тупик. Я практик. Я не открываю документацию, если нет задачи. Прилетела задача - тогда полный в перед. Сначала, если это что-то новое изучаю best practice, потом best development tools, потом best solutions и только потом приступаю к решению. Да, иногда, по ходу решения делаю велосипеды, ну и что - кто их не делает. Моя работа - решать задачи автоматизации для бизнеса. Мои решения полностью устраивают бизнес. А раз так - я и дальше буду работать программистом и продолжать быть джуном.
      Ответить
      • >рассуждения о высоких материях моделей, замыканий, трейтов, паттернов

        Кто поймет всю трагедию этой фразы -- тому ничего
        Ответить
        • Так тут бОльшая часть таких, которые в интернете рассуждает про парсер жсон на gpu, а на работе хуярит бойлерплейт.
          Ответить
          • Рассуждают про моноиды в перерывах между заменой картинок в формочке
            Ответить
      • > написать в багтрек и дождаться исправлений
        Только очень жди, долбоёб.
        Ответить
        • Всегда так делаю. В течение десяти лет любой баг обычно либо чинят, либо он становится неактуальным
          Ответить
          • Если долго сидеть ня берегу, можня увидеть, как проплывает труп твоего врага.
            Ответить
            • Боюсь, ждать придется очень долго. Лучше самому его утопить, а потом побежать ниже и увидеть, как плывет труп, возрадовавшись.
              Ответить
      • это Вы, профессор?..
        Ответить
    • https://vk.com/wall-72495085_1371131
      Ответить
      • Если у тебя на руке кавычка, то отрвет кусок комнаты
        Ответить
    • Блядь, как всё сложно
      Ответить
    • Перекат!

      https://govnokod.ru/28443
      https://govnokod.xyz/_28443/
      Ответить
    • #на правах оффтопа
      Ответить
    • #на правах оффтопа
      Ответить
    • #на правах оффтопа
      Ответить
    • #на правах оффтопа
      Ответить
    • #на правах оффтопа
      Ответить
    • #на правах оффтопа
      Ответить
    • #на правах оффтопа
      Ответить
    • #на правах оффтопа
      Ответить
    • #на правах оффтопа
      Ответить
    • #на правах оффтопа
      Ответить
    • #на правах оффтопа
      Ответить
    • #на правах оффтопа
      Ответить
    • #на правах оффтопа
      Ответить
    • #на правах оффтопа
      Ответить
    • #на правах оффтопа
      Ответить
    • #на правах оффтопа
      Ответить
    • #на правах оффтопа
      Ответить
    • #на правах оффтопа
      Ответить
    • #на правах оффтопа
      Ответить
    • #на правах оффтопа
      Ответить
    • #на правах оффтопа
      Ответить
    • #на правах оффтопа
      Ответить
    • #на правах оффтопа
      Ответить
    • #на правах оффтопа
      Ответить
    • #на правах оффтопа
      Ответить
    • #на правах оффтопа
      Ответить
    • [color=whirw]b9Zk1Bz2Ry4Wb7Gs7Wl2Aw9Vk2Qy5Bz8Ka5Bn3Tv 9Sm3Br7Os6Nc8Rt2Fq8Qy9Xi2Zd5Zw5Gl9Vv0Sd5 Cf1Ke9Vz1Zl7Ro3Sx0Qh[/color]
      Ответить
    • [color=whirw]t1Ox1Mf0Vt9Dp3Zv2Uj8Il6Rk7Tu4Gy4Jz4Rh6Mp 6Lx9Gi7Nn5Vc3Cw9Qe1Vi4Yb7Vm3Mt8Qs7Yn7Gi7 Rb2Op1Xk3Cr2Rz1Uc6Ry[/color]
      Ответить

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