Amikoj
 
[Most Recent Entries] [Calendar View] [Friends View]

Below are 25 friends' journal entries, after skipping by the 25 most recent ones.

    [ << Previous 25 -- Next 25 >> ]
    Thursday, November 23rd, 2023
    ketmar
    9:17p
    если у кого-то были ещё сомнения
    ну вдруг сабж, мало ли. как только полный пиздец хамасу замаячил не на горизонте, а прямо у порога — мгновенно тормоза, «переговоры» и вся хуйня. илитка позволяет только создавать «очаги напряжённости», а уничтожать их — никогда и ни за что.

    до кого ещё не дошло — рассмотрите перспективу «скорого конца войны с россией» в свете последнего утверждения. для особо просветлённых дивнюков напишу открытым текстом: никакой победы не будет. ну, точнее, Охуительной Победой объявят пуски ракет раз в месяцок, да постоянные «мелкие стычки на границе». но ещё нескоро. привыкаем жить в Новой Нормальности, чо. впрочем, это мнение врага-пораженца, конечно, который вместо криков «славаукраине» имеет наглость тыкать пальцем в кучи говна, которые Настоящие Патриоты Украины замечать не должны.
    ketmar
    7:21p
    кстати, про
    охуенное количество контор (включая гос, и критические для инфраструктуры конторы) работает на «1с». это всё, что имеет смысл знать про «независимую хрюкаину». двадцать+ лет Великой Нэзалэжности, очевидно, слишком мало, чтобы разработать и использовать своё. ничего, главное погромче кричать «славаукраине». а важный софт можно брать у страны-агрессора, и без исходников. подумаешь. возбуждать расследование по поводу глупых слов старой дуры фарион всяко важнее.
    Sunday, November 19th, 2023
    ketmar
    3:49p
    немного допилил YTERM
    категорически заебло, что в терминале невозможно узнать про нажатия чего-то типа «C-S-Enter» (или пробел, или альфанум). поэтому допилил специальное YTERM-расширение: «\x1b[<upper-ascii-code>;<modcode>Y».

    modcode — обычный код для модофикаторов, который используется и в других OSC:
    n;2 — Shift
    n;3 — Alt
    n;4 — Alt+Shift
    n;5 — Ctrl
    n;6 — Ctrl+Shift
    n;7 — Ctrl+Alt
    n;8 — Ctrl+Alt+Shift
    

    естественно, просто Alt генерит обычный Esc, code. и Shift с циферками не перехватывается. а остальное — таки да. включая Alt+Shift+буковка, потому что мне так удобней.

    соответственно, я теперь могу писать tty-софт, который умеет в кучу кейкомбов с разными-всякими модификаторами. конечно, работать это будет только в моей терминалке — но меня не волнует, я другие терминалки не использую. никто не мешает всем остальным эмуляторам терминалов взять — и поддержать Мой Охуительный Стандарт. не хотят? ну, их проблемы.

    я — как обычно — совершенно не понимаю, почему до сих пор на такие комбы нет стандарта. если уж ведро пинусов так держится за протокол дивайсов более чем полувековой давности — хуй с ним. но нахера делать вид, что с тех пор ничего не поменялось? у нас есть клавиатуры с кучей модификаторов — но использовать это нормально в консольном софте невозможно, потому что… а хуй знает, почему. видимо, потому что ссаные пинусы — это повторение уёбищной, собраной на коленке говнооперационки 70-х годов прошлого века.

    впрочем, я слишком многого хочу от ведра пинусов: там даже стандарта на OSC от функциональных клавиш (и некоторых других, типа Home/End) нет. дебилыбля.

    кстати, нумерация Shift+F-кнопочек в OSC нихуя не последовательная. почему? потому что идите нахуй, вот почему. потому что на старых клавах были F1-F4, и всё. поэтому S-F1..S-F4 — это [23..26]. 27 — пропущен. Очень Страшное Число даже в десятичной записи, а не одним байтом, лучше не использовать, ага. S-F5 и S-F6 будут 28 и 29. число 30 тоже Очень Страшное, его опять пропустили. S-F7..S-F10 — [31..34].

    и если вы думаете, что без шифта хотя бы Fn нормальные… F1-F5: [11..15]. F6..F10: [17..21]. а потому что идите нахуй два раза, вот почему. ах, да. это rxvt. а если xterm — то F1-F4 совсем особенные, они генерируют «\x1bOP» и далее до «S».

    о, и ещё. F11 и F12. хахаха. F11 — 23. F12 — 24. конечно, 23 — это «Shift+F1». а кого ебёт, зачем нам отличать F11 от Shift+F1? или F12 от Shift+F2? в общем, их я тоже в своё расширение вынес, с кодами 111 и 112.
    Wednesday, November 15th, 2023
    ketmar
    8:03a
    вот и луне пизда приходит
    чую, чую мракобесие!

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

    ну и хуй с ним, прекращу собирать, значит. меня, в принципе, и то что есть устраивает.
    Saturday, November 11th, 2023
    ketmar
    6:50a
    лол
    гейдевы вытащили из… сумки новую отмазку: «дивелапмент воз рашд!» отличный отмаз. «мы нищасные, на нас давили издатели, нам не давали бабосиков, мынивинаваты! главное — вы купили наше говно, ахахаха, лохи.»

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

    я, кстати, считаю, что срок рефанда на игоря должен быть минимум месяц. да, большинство людей будут проходить вашу срань и рефандить. а не делайте срань потому что. вообще-то известный факт: люди согласны платить за то, что считают хорошим; доля тех, кто принципиально всё быстро пробегает и рефандит весьма небольшая. так что при таких раскладах не «игорей станет меньше», а говна. делайте ваши игори так, чтобы во-первых, люди не хотели свои деньги обратно. а во-вторых (которое продолжает во-первых) так, чтобы в игоря хотелось играть и после прохождения. ну, или идите пилить онлайн-дрочильни, там лохи не переведутся никогда.
    Tuesday, November 7th, 2023
    ketmar
    11:26p
    и ещё к прошлому, про языки
    на самом деле встроеный в восьмибитки бейсик — это было отлично. да, бейсик как язык для написания софта уёбищен. зато он простой, быстрый и интерактивный. обычно человеку нахуй не всралось читать труды Корифеев, изучать структурное программирование, дизайн кода и систем, чтобы сделать простенькие расчёты или обработку текстов. потому что ему, блядь, надо сделать простенькие расчёты или обработку текстов. и вот тут язык с минимумом ограничений и мгновенным реагированием идеален.

    оберон, в принципе, тоже очень простой. но всё-таки уже имеет оверхэд: описание модуля, описание процедуры, описание переменных, begin/end, это вот всё.

    систему, приближеную к идеальной, я вижу как-то так: там должно быть очень просто писать на каком-нибудь варианте бейсика. буквально: «набрал кусок кода где угодно, выделил, исполнил.» делать этот бейсик быстрым или с овердохуя возможностей совершенно не обязательно, потому что точно так же «выделить-скомпилить» можно и код на обероне. как только бейсика перестаёт хватать или он начинает тормозить — можно щёлкнуть по документу с кратким, в несколько страниц, описанием оберона и интерактивными примерами.

    всё. те, кому хватает бейсика — остаются с бейсиком. те, кому не хватает — без проблем переходят на не менее простой оберон. номера строк и гото в таком бейсике не нужны, он по форме представляет из себя упрощённый оберон, с теми же ключевыми словами, только без обвеса обязательных деклараций всего. такой псевдобейсик умеет получить выделеный где-то в системе текст как входные параметры, вывести результат в окно лога, открыть новый документ и нарисовать там какой-нибудь простейший график. всё, ни «строить гуя», ни прочее сложное. остальное на обероне.

    и мы имеем возможность сразу сделать с техникой что-то полезное и даже относительно интерактивное, при этом понизили порог вхождения. большинство людей даже не будут думать об этом как о «программировании», потому что «программирование» — это огромные неповоротливые иде, куча говнокода, и всё такое. а тут просто несложные и быстрые команды компу, какое ж это программирование.
    Monday, November 6th, 2023
    ketmar
    3:57a
    кстати, об интерфейсах
    никогда не замечали странной штуки: современные компьютеры — буквально, «вычислители» — неудобнее всего применять именно для вычислений? вот эта вот коробка, единственное реальное умение которой заключается в пердоленье чисел, не может вычислить даже простое арифметическое выражение в тексте и заменить его на результат. охуительно: до пизды битов, fpu, simd, вся вот эта ебатория — а просто посчитать выражение до сих пор ёбаный квест.

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

    современные компьютеры не годятся даже для того, чтобы с комфортом считать. всё остальное они делают ещё хуже.
    Sunday, November 5th, 2023
    ketmar
    8:15a
    да, и ещё про стандарты форта
    по какому-то странному, нелепому стечению обстоятельств у тех, кто там сейчас активничает, никаких реальных форт-проектов нет. риторику: «да фигня, у нас есть такие проекты, но мы вам о них не расскажем!» я не покупаю.

    где проекты на gforth? пока что я знаю только один: сборка самого gforth.

    где проекты на bigforth? пока что я знаю вообще ни один.

    минос? простите, но это уёбище (и опять-таки используется нигде).

    spf? мертвей гвоздей, после eserv и nncron на нём ничего не было. а авторы этого софта в создании стандарта не участвуют. (да и вообще, после того, как туда взяли маков макроподстановщик-оптимизатор, добровольно пользоваться этой системой могут только экстремалы с тягой к неконтролируемому селфхарму.)

    про всякие «коммерческие форты» чем меньше говорить — тем лучше. живут на том, что когда-то (давно) кого-то (трёх инвалидов) нечаянно угораздило вляпаться в это дерьмо, и теперь кодобазу на них хуй переделаешь.

    и вот эта могучая кучка пытается диктовать практический общеприменимый стандарт форта (о нужности которого я писал отдельно). даже если бы стандарт и был нужен — то вот точно не от этих людей: любой их высер будет заведомо мёртворождённый.

    да, у меня тоже только хобиийные для личного использования. так я и не лезу диктовать всем, каким должен быть Стандартный Форт. только каким не должен, а вынепонимаетеэтодругое.
    ketmar
    6:40a
    ёбаный гоцэцэ
    «а давайте… давайте… давайте дадим инструменты, но поломаные, но снаружи хорошие, и никому не скажем, что они поломаные, ахахахахаха!» пидорасы. в самом плохом смысле.

    вот в гоцэцэ можно брать адреса меточек, а потом на эти адреса делать прямое goto. вроде бы круто, да? ну, извращение, но если надо быструю виртуальную машину с минимальным диспетчером опкодов, а в асм по каким-то причинам нельзя — то вполне вариант, компилируется в три асм-команды. примеров в сети есть.

    а теперь мы хотим то же самое, только джампать внутрь функций. а почему нельзя? параметров функции не принимают, локалов не используют. а мне удобно описывать примитивы как отдельные функции, чтобы можно было ядро расширять. и вот тут гоцэцэ начинает считать, что он просто охуеть умный какой.
    void *fuck_you_gcc (void) {
      return &&mylabel;
    mylabel:
      что-то-там
      goto **IP++;
    }
    

    круто, да? ну можно же? а вот хуй. сначала гоцэцэ матерится, что я, де, возвращаю указатель на локальную метку. блядь, да, прикинь: именно это я и хотел сделать! матерится, кстати, ворнингом, не еггогом. ладно. успокаиваем дегенерата.
    void *fuck_you_gcc (void) {
      static const fuck_you_gcc_again[1] = {&&mylabel};
      return (void *)fuck_you_gcc_again[0];
    mylabel:
      что-то-там
      goto **IP++;
    }
    

    на удивление, хвалёный data flow analysis тут каким-то образом умудряется обосраться и ничего не заметить. ворнинг пропал. но… нихуя не работает. потому что хвалёный data flow analysis обосрался. гоцэцэ считает, что метка, и всё, что за ней, не используется — и возвращает вместо адреса метки почему-то адрес входа в функцию. я хуй знает, почему он посчитал, что это «оптимизация, которая не меняет смысл программы». видимо, потому что гладиолус. ладно. обходим.
    static volatile int fuck_you_gcc_agan_and_again;
    void *fuck_you_gcc (void) {
      static const fuck_you_gcc_again[1] = {&&mylabel};
      if (fuck_you_gcc_agan_and_again == 0) {
    mylabel:
        что-то-там
        goto **IP++;
      }
      return (void *)fuck_you_gcc_again[0];
    }
    

    переменную в глобальном ините ставим в неноль, потом зовём функцию (да, кстати: такой изврат с вызовом потому что иначе-то никак адрес метки не получить, она ж локальная). ура, адрес метки правильный, но… нихуя не работает. потому что опизденеть какой умный гоцэцэ… блядь, вот не угадаете. даю паузу.

    ладно, всё равно никто даже не пытался. короче, несмотря на то, что IP — глобал, что я его даже пометил volatile — ебаный гоцэцэ решил, что этот гото может прыгнуть исключительно на эту метку, и больше никуда. ведь других меток в функции нет. поэтому он заменил индирект на простое «jmp mylabel». ай, бля, красава, ай, бля, спасибо! это, видимо, снова Охуительная Не Меняющая Смысл Кода Оптимизация. попытки прояснить гоцэцэ при помощи трюков встроеного асма закономерно не работают. ладно. всовываем всем в жопу лом.
    static volatile int fuck_you_gcc_agan_and_again;
    void *fuck_you_gcc (void) {
      static const fuck_you_gcc_again[2] = {&&mylabel, &&fuck_gcc_developers_with_long_crowbar};
      if (fuck_you_gcc_agan_and_again == 0) {
    mylabel:
        что-то-там
        goto **IP++;
      }
    fuck_gcc_developers_with_long_crowbar:
      return (void *)fuck_you_gcc_again[0];
    }
    

    вы не поверите, но на этом месте гоцэцэ устал со мной бодаться и сгенерировал именно тот код, которого я от него добивался. ура, у нас же теперь АЖ ЦЕЛЫХ ДВЕ МЕТОЧКИ, значит гото нельзя «оптимизировать»! то, что вторая не используется — гоцэцэ, к счастью, не заметил.

    да, здесь денегераты со «стандартом» в верхней жопе начнут мне рассказывать, что использование адреса метки вне функции, где она определена — это UB, а потому гоцэцэ имеет право на всё вышеописаное. с этими существами я спорить не буду по причине отсутствия у них мыслительного органа.

    если чо, всю эту хуйню гоцэцэ делает даже с -O0. не то чтобы оно было важно, потому что нахера мне быстрая VM при -O0, но отмечу на всякий случай.

    p.s.: ответ на вопрос, который никто не задавал: «почему не использовать просто адреса фнукций, там же всё равно нет аргументов и локалов?» потому что при каких-то странных условиях гоцэцэ иногда им зачем-то всё равно приписывает пролог и эпилог. я не очень понял, что является триггером, но. соответственно, `goto` эпилог не делает, и стек улетает в гости к венерианским сисястым шлюхам. (дополнение: это может быть пиздёж с моей стороны, вызваный Тяжёлыми Обстоятельствами. но я всё равно изначально хотел объединять несколько примитивов в один «пакет», и всё равно засунуть их все в одну функцию не выйдет, их там за триста штук, и они всё равно могут джампать наружу из функции.)
    Saturday, November 4th, 2023
    ketmar
    6:42p
    серия «как определить», форт
    как быстно определить, что человек абсолютно не знает форта, не умеет на нём писать, и ничего стоящего внимания на форте не делал? у него нет своей форт-системы.

    она не обязательно должна быть написана с нуля, но она должна быть. индивидуальная.

    это, если что, то, как форт был изначально задуман.

    да, рядом с кодом на старой версии форт-системы лежит сама эта форт-система. потому что новая тот код уже не запускает. это нормально. это значит, что старая программа или нахер никому не нужна, или настолько хороша, что в неё после написания никогда не пришлось лазить.

    и да, это идёт абсолютно вразрез с «общепринятыми практиками». именно поэтому единственный, кому удалось использовать форт всю жизнь и быть вполне успешным — Чак Мур. который эти практики игнорировал инстинктивно. все остальные (включая меня, конечно) слишком зашорены, слишком укушены в мозг.

    я вон заместо мыслить критически — тупо реализую ненужные куски стандартов. потому что Так Принято. например, вместо красивого «<BUILDS DOES>» — упорно пытаюсь сделать, чтобы «DOES>» можно было использовать с CREATE. зачем? а потому что «фиг-форт устарел!» (что не мешает мне тащить фигфортовую VARIABLE, да).

    упорно использую VALUE вместо QUAN. почему? Патамуша Стандарт. хотя QUAN намного лучше: описание переменных отдельная часть, там нормально иметь странное слово. а слово «value» слишком общеупотребительно. в форте не зря «VARIABLE» и «CONSTANT»: это не от любви к многословию, а потому что никто в здравом уме не станет использовать эти слова полностью для других целей.

    до сих пор не сделал стек CURRENT. вместо этого при необходимости сменить и восстановить CURRENT — гажу на обычный. фу.

    ладно хоть хватило мозгов в новые системы затащить опциональный адресный регистр, он удобен для всяких цепочечных сканов. а так куча всего, что давно надо бы в моих фортах переделать нормально — но…

    это я всё к тому, что даже я со своим илитизмом укушен. что уж говорить о бедных новичках, которые приходят учить форт, и им НИКТО НИКОГДА не говорит, что все стандарты поебень, авторы стандартов идиоты и злонамереные мудаки, и форт совсем не про то, что новичкам пытаются впарить. люди мучаются, мучаются, закономерно не понимают, что в этом вашем форте такого, и уходят.

    p.s.: самый яркий показатель того, что человек на форте писать не будет — вопросы типа: «у кого есть форт под XXX, где скачать?»
    Friday, November 3rd, 2023
    ketmar
    7:19p
    именно так
    ANSI Forth is ANTI Forth.

    единственные две причины, по которым нынешняя инкарнация UrForth/C имеет сишный кернел и слой совместимости с анс это: я не ожидаю, что кто-то будет в состоянии портировать UrForth/x86 чтобы запускать софт на нём на других системах, и у ans есть хороший тестер, который у меня руки не доходят переписать — проще прямо в начале кода тестов дорихтовать систему до анс-идиотии.
    Thursday, November 2nd, 2023
    ketmar
    8:42p
    овцы против стрижки, лол
    ахуеть, ани слидят занаме!

    ну кто бы мог подумать, что все эти «умные поеботины» делаются во-первых, дегенеративными макаками, а во-вторых, их дырявость не баг а фича? ну ничего же, блядь, не предвещало.

    хумансы пиздец тупые.
    ketmar
    4:10p
    кстати, стандартизаторы форта — ебаные дегенераты, естественно
    Please let us know if a modern, actively developed system is missing in this list. а там, конечно: «To contact us, please file an issue on github.»

    в принципе, это всё, что надо знать про стандартизацию, про дегенератов, которые этот стандарт делают, и про то, что они мечтают сделать с фортом.

    жаль, что там есть люди, которых я в своё время уважал. но потом они ебанулись, и сейчас все достойны только плевков.

    а стандарт их говнина ебаная, конечно.
    Monday, October 16th, 2023
    ketmar
    3:49a
    ещё один лёгкий способ определить дебилов
    в коллекцию вам: если выкладывают .xz-архивы — это дебилы. без вариантов. потому что xz тоже делали дебилы, дебил к дебилу тянется.
    Saturday, October 14th, 2023
    ketmar
    6:41p
    просто великолепно
    говноцэцэ13, цитата:
    /home/ketmar/back/vavoom_dev/src/libs/core/fsys/../str.h:80:101: warning:
     'unsigned int __atomic_load_4(const volatile void*, int)' writing 4 bytes into a region
     of size 0 overflows the destination [-Wstringop-overflow=]
    

    каким хуем у него чтение генерирует запись — хуй знает.

    говнище настолько уёбано в полнейший хлам, что я попросту прекращаю официальную поддержку этой срани в вавумчике. билды с говноцэцэ13 сломаны, не поддерживаются, и поддерживаться не будут никогда. deal with it.
    Friday, October 13th, 2023
    ketmar
    9:27a
    не могу не поржать
    мы за типа равноправие и прочая, но не смейте с нами конкурировать!

    а что случилось, что такое? рыночек порешал не в вашу пользу? ай, какая жалость…

    я таки знавал женщин-техспецов, и имею сказать, что всё у них было нормально с работой и окружением. правда, есть нюанс: они были больше заинтересованы в своём занятии, а не во всяких диверситях с инклюзивитями.

    кстати, нонбинарные вообще не должны цифровой техники касаться, там бинарность на каждом шагу. будьте последовательны, отриньте эту мерзость!
    Thursday, October 12th, 2023
    ketmar
    1:30a
    россия — это удобно!
    не, на самом деле удобно: при любой заварушке надо просто посмотреть, за кого топит россиюшка, и смело выбирать противоположную сторону. на противоположной стороне не обязательно силы всякого там добра и света, но те, за кого россиюшка — те однозначно ебаное нечеловеческое говно.
    Wednesday, October 11th, 2023
    ketmar
    12:37a
    всё, что...
    …имеет смысл знать про Охуительное Удобство и Портабильность бидона: заебали.

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

    кто юзает бидон — тот говноед. и других тоже заставляет есть говно. не будьте говноедами.
    Monday, October 9th, 2023
    ketmar
    12:24a
    кто бы сомневался
    пидорахены традиционно в оргазмическом восторге от того, что где-то кого-то убивают. двойной оргазм от того, что евреев. потому что в россии почти сплошь антифашисты, конечно.

    а я в который раз повторю, что молодые еврейки очень красивые, и их жаль. а вместе с ними и остальных евреев, за компанию. и палестинцев тоже жаль. всех жаль, все ебанулись, а зачем — непонятно.
    Thursday, September 21st, 2023
    ketmar
    6:37p
    недооценил
    должен признаться, что я беседку недооценил: со старфилдом у них действительно вышло нечто удивительное. необычайное. нечто потрясающее. у них вышла игра, которая не была сломана к полным хуям до полной неиграбельности на старте.

    а? остальное? а там что, ещё что-то есть? всё остальное там настолько никакое, что запомнить ничего не получается. что, в общем-то, тоже для нынешней беседки достижение. вот такие вот достижения у современного ааа-игродева: проебавшись кучу лет, выпустить игру, в которой особо нечего от души поругать. про «выпустить хорошую игру» речь, понятно, давным-давно не идёт.
    linux
    [ tho ]
    4:08a
    а давайте запостим свои bash/zsh алиасы. хотя нет, алиасы это конечно
    интересно, но функции это еще интересней

    итак

    1. эта создает директорию и переходит в нее одной командой

    ccd() {
      mkdir "$1" && cd "$1"
    }


    2.  эта добавляет к каждому "git clone" аргумент --recursive

    git() {
      if [ "$1" = clone ]; then
        shift
        set -- clone --recursive "$@"
      fi
      command git "$@"
    }


    3. то же самое для gh (cli клиент гитхаба)

    gh() {
      if [[ "$1" = repo && "$2" = clone ]]; then
        shift
        shift
        set -- repo clone "$@" -- --recursive
      fi
      command gh "$@"
    }


    есть еще парочка других, но они не так интересны


    Current Music: ural umbo - self fulfilling prophecy
    Wednesday, September 20th, 2023
    ketmar
    11:39p
    сложный вопрос залу
    кто-нибудь встречал эмулятор 286+ega/vga, который более-менее точно эмулирует растактовку, задержки вывода в видеопорты и медленную видеопамять? чтобы не «ну, примерно прикинули кое-как», а правильно циклы и тормоза считало.

    мне чисто развлечься: попробовать напилить платформер на 286, посмотреть, хватит ли у меня сейчас умения сделать что-то приличное по скорости. реального-то железа днём с огнём не найти теперь (а если и найти, то это больше проблем, чем пользы).

    dosbox нит, он в такое не умеет. и даже dosbox-x не умеет (или я так и не понял, как его правильно приготовить). а сам я пизданусь искать инфу по растактовкам и тормозам, чтобы свой эмуль запилить.

    интересно попробовать несколько разных схем и посмотреть, что в итоге было бы быстрее. включая всякие извращения с генерацией шитого кода на лету.
    Tuesday, September 12th, 2023
    ketmar
    3:27p
    кстати
    а вы знаете, что мы до сих пор живём в мире, где в байте семь бит, а восьмой так, хуй знает зачем? потому что нахуя иначе куча дегенератов гоняет по сети ебаный жысон вместо нормальных бинарных протоколов? хотя они иногда этот жысон сжимают каким-нибудь злибом, так что как минимум некоторые в курсе, что есть восьмой бит. но выбирают жысон, а потом суют в него бинарные данные, закодированые base64. потому что семь битов.

    и нет, это нихуя не помогает «человекочитабельности»: один хуй надо прогонять хотя бы через prettifier — так с тем же успехом можно прогнать и через декодер бинаря.

    блядь, когда дегенераты уже поймут, что жысон, хымылы, и прочая эта поебень — она предназначена для обмена данными между разными системами, у которых протоколы и форматы иначе не совместимы. чтобы был common ground. а когда у тебя и клиент, и сервер общаются по одному и тому же протоколу — за каким хуем ты добавляешь дополнительный шаг бесполезной сериализации в псевдоглазочитаемый формат, и потом шаг десериализации обратно?

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

    и да, хуйня типа protocol buffers, cbor, и так далее — это та же самая хуйня, вид сбоку. если ты, блядь, не знаешь, что ты по сети передавать собрался — не передавай. а если знаешь — нахуя тебе там инфа о типах и прочая такая херота: ты же их уже знаешь, блядь. въеби в начало пакета версию, и всё. ну, тип пакета ещё можно — хотя это почти то же самое, что версия.

    а потом эти же макаки стонут, что у них каналы трафиком забиваются. но простая мысль: «не надо передавать бесполезную хуйню» — она в пустые черепа так никогда и не приходит.
    Wednesday, September 6th, 2023
    ketmar
    8:19p
    почему я давно перестал обновлять гцц, и больше не буду
    src/yterm_main.c:609:58: warning: '%s' directive output may be truncated writing up to 4095 bytes
      into a region of size 255 [-Wformat-truncation=]
    snprintf(term->title.last, sizeof(term->title.last), "[%s]", exe);
    src/yterm_main.c:609:3: note: 'snprintf' output between 3 and 4098 bytes into a destination of size 256
    snprintf(term->title.last, sizeof(term->title.last), "[%s]", exe);

    и вот здесь ни у одного — ни у одного, блядь, еблана в той жопе, которую он считает своим черепом, в том говне, который он считает своим мозгом, не зародилась мысль: «а может, когда `snprintf()` используют так — это именно потому, что НАДО обрезать строку по размеру буфера? потому что иначе там бы хватило и `sprintf()`.» но нет, глаза-стёклышки, мыслей нет.

    конечно, я могу отключить этот дебильный ворнинг, но: а какого хуя его вообще сделали, какого хуя его надо отключать? это, блядь, не просто легитимное — это применение `snprint()` ровно для той цели, для которой её и создавали. компилятор ворнит о правильном применении функции, заебись.

    вот поэтому я считаю нынешних дивилапирав гоцэцэ дегенератами, сам проект гоцэцэ дерьмом, и обновляться с гоцэцэ6 (уже малость попорченой) никуда не собираюсь. в шестом оно ещё с трудом, но юзабельно.
    Saturday, September 2nd, 2023
    ketmar
    9:19p
    кстати
    сколько там уже прошло с момента Победоносного Введения IPv6? больше двадцати лет, да? и интернеты всё ещё mostly IPv4? вот одного этого достаточно, чтобы принять как аксиому: «дизайнеры IPv6 нихуя не понимали в том, что делали».

    а ведь всего-то надо было запилить одну вещь. маленькую. из вот тех 16 байт выделить диапазон, который полностью покрывает все IPv4 адреса. и обратно совместимый сетевой протокол. после чего можно было бы стелсом заменять везде IPv4 на IPv6 — и никакой софт бы не заметил. и никто бы не заметил, потому что со старым железом говорили бы по старому протоколу, старый софт спокойно бы использовал старый API — и похуй как оно там доставляется. и через несколько лет IPv4 был бы так же распространён, как сейчас gopher. после чего авторы софта увидели бы чёткие преимущества перехода на апи с поддержкой IPv6 — и все бы перешли. а старый-старый софт… а он бы всё равно продолжал работать.

    но дизайнеры IPv6 по какой-то странной причине были уверены, что все остальные люди просто горят желанием въебать кучу времени, чтобы поддерживать их ни с чем не совместимую говнину. отличный план, не вижу ничего, что могло бы пойти не так.

    это, блядь, настолько очевидно, что я не понимаю, почему это было неочевидно.

    кстати, ещё через двадцать лет всё так же будет IPv4. если к тому времени кто-нибудь не выймет голову из жопы, и не запилит какой-нибудь IPv8, который пошлёт нахуй IPv6, будет сдизайнен с нуля, и с учётом обратной совместимости с IPv4. а до тех пор IPv6 нахуй не всрался.

    и кстати: кому не хватало восьми байт адреса? зачем, блядь, шестнадцать? а почему не сто двадцать восемь тогда?
    [ << Previous 25 -- Next 25 >> ]
About LJ.Rossia.org