#llvmweekly
https://discourse.llvm.org/t/rfc-modelling-errno-memory-effects/82972
TL;DR - коллеги собираются сделать какие-то оптимизации, которые смогут полагаться на то, что произвольный указатель может указывать на errno, только если он имеет тип
Еще одна причина не использовать int в своем коде!
https://discourse.llvm.org/t/rfc-modelling-errno-memory-effects/82972
TL;DR - коллеги собираются сделать какие-то оптимизации, которые смогут полагаться на то, что произвольный указатель может указывать на errno, только если он имеет тип
int* (и совместимый).Еще одна причина не использовать int в своем коде!
LLVM Discussion Forums
[RFC] Modelling errno memory effects
Motivation A large number of C library functions report errors by setting the errno variable. LLVM currently has no explicit way to model that a function can only write to errno in particular, so we have to make very conservative assumptions about which memory…
😁7🐳5👍3❤2
Новости #bootstrap
https://jakstys.lt/2024/zig-reproduced-without-binaries/
zig сумели собрать из исходников. Не из прикопанного бинаря zig.wasm (кстати, в копилку креативных способов использования #WebAssembly), а цепочкой, с самых ранних стадий разработки:
1) Build Zig from the C++ implementation of the commit above (with hacks and tricks to make it actually compile).
2) Use previous step to build the first Zig self-hosted.
3) Proceed to the next step. When the updated Zig does not build, find creative ways to build it anyway (or, when really stuck, ask @mlugg).
4) Goto 2 for 45+ times.
Вот последний пункт, конечно, очень впечатляет - это же сколько настойчивости надо иметь?
Автору респект и уважуха.
https://jakstys.lt/2024/zig-reproduced-without-binaries/
zig сумели собрать из исходников. Не из прикопанного бинаря zig.wasm (кстати, в копилку креативных способов использования #WebAssembly), а цепочкой, с самых ранних стадий разработки:
1) Build Zig from the C++ implementation of the commit above (with hacks and tricks to make it actually compile).
2) Use previous step to build the first Zig self-hosted.
3) Proceed to the next step. When the updated Zig does not build, find creative ways to build it anyway (or, when really stuck, ask @mlugg).
4) Goto 2 for 45+ times.
Вот последний пункт, конечно, очень впечатляет - это же сколько настойчивости надо иметь?
Автору респект и уважуха.
jakstys.lt
Zig Reproduced Without Binaries - Motiejus Jakštys Public Record
Motiejus Jakštys personal space
😁21👍10🔥6🤡4🤮2💩1
Forwarded from Programmer memes
Please open Telegram to view this post
VIEW IN TELEGRAM
😁40👍5❤4😢3💯2
https://www.opennet.ru/opennews/art.shtml?num=62241
https://github.com/pizlonator/llvm-project-deluge
https://github.com/pizlonator/llvm-project-deluge/blob/deluge/Manifesto.md
Чувак запилил безопасный C/C++, который работает здесь и сейчас, и ловит реальные ошибки в реальном коде - https://github.com/python/cpython/issues/118534 https://github.com/python/cpython/issues/118534#issuecomment-2093276383
Да, tagged pointers, https://en.wikipedia.org/wiki/Tagged_pointer, без необходимости использования специального железа (https://www.cl.cam.ac.uk/research/security/ctsrd/cheri/)
Хороший проект, будем наблюдать.
#filc
https://github.com/pizlonator/llvm-project-deluge
https://github.com/pizlonator/llvm-project-deluge/blob/deluge/Manifesto.md
Чувак запилил безопасный C/C++, который работает здесь и сейчас, и ловит реальные ошибки в реальном коде - https://github.com/python/cpython/issues/118534 https://github.com/python/cpython/issues/118534#issuecomment-2093276383
Да, tagged pointers, https://en.wikipedia.org/wiki/Tagged_pointer, без необходимости использования специального железа (https://www.cl.cam.ac.uk/research/security/ctsrd/cheri/)
Хороший проект, будем наблюдать.
#filc
GitHub
GitHub - pizlonator/fil-c: Fil-C: completely compatible memory safety for C and C++
Fil-C: completely compatible memory safety for C and C++ - pizlonator/fil-c
👍19🔥6🤔5🆒3❤2
Хотел было написать текст, что https://macode.ru/ надо приправлять щепоткой "а ебись оно все конем", а потом вспомнил, что уже про это писал!
Поэтому просто ссылка на свой же текст - https://xn--r1a.website/itpgchannel/570
Поэтому просто ссылка на свой же текст - https://xn--r1a.website/itpgchannel/570
❤10🤔4👍3🔥3🐳2
The After Times
Photo
Это разве тест на олдскульность?
Я вот понимаю спросить, как "это" называлось под DOS...
Я вот понимаю спросить, как "это" называлось под DOS...
🤔6🐳5👍2
commit -m "better"
Это разве тест на олдскульность? Я вот понимаю спросить, как "это" называлось под DOS...
Ладно, "это" называлось Game Wizard, и вышло на пару лет раньше ArtMoney:
https://archive.org/details/game-wizard-32-pro-30-a-dfi
http://old-dos.ru/index.php?page=files&mode=files&do=show&id=5610
(в 94, вроде, году)
https://archive.org/details/game-wizard-32-pro-30-a-dfi
http://old-dos.ru/index.php?page=files&mode=files&do=show&id=5610
(в 94, вроде, году)
Internet Archive
Game Wizard 32 Pro 3.0 : Free Download, Borrow, and Streaming : Internet Archive
Game Wizard is a universal game utility that will allow the user to cheat in any DOS or DOS-Extender based games.Game Wizard (archive.org)Game Wizard 32 Pro...
❤9🌚7👍4🔥1
#безопастный_rust
Продолжаем цикл заметок про то, что Rust не является memory safe language.
Самое главное тут, конечно, договориться, что значит "memory safe". Почему это важно, я писал в https://xn--r1a.website/itpgchannel/1828
Часто слышу определение "в коде нет unsafe блоков".
В связи с этим я задаю два вопроса:
* https://blog.yossarian.net/2021/03/16/totally_safe_transmute-line-by-line - вот, очень даже safe код, исходя из этого определения.
* Является ли отношение "не содержит unsafe" транзитивным, потому что в stdlib есть unsafe.
Обычно после этого коллеги начинают рассказывать про soundness кода.
Что такое soundness?
По сути, это синоним "мамой клянусь". То есть, у нас нет формального доказательства того, что код ведет себя так, как надо, но автор кода сумел уболтать других людей, что это правда.
Поэтому вот вам самая мякотка - Rust является memory "мамой клянусь"-safe language.
Проблема в том, что и С, и С++ - это тоже "мамой клянусь"-safe language, а если там в коде ошибка - то этоskill issue "да вы просто не умеет в С".
Я даже готов согласиться, что в классе "мамой клянусь"-safe языков, Rust один из наиболее безопасных (в каком-то смысле), но на этом все.
Продолжаем цикл заметок про то, что Rust не является memory safe language.
Самое главное тут, конечно, договориться, что значит "memory safe". Почему это важно, я писал в https://xn--r1a.website/itpgchannel/1828
Часто слышу определение "в коде нет unsafe блоков".
В связи с этим я задаю два вопроса:
* https://blog.yossarian.net/2021/03/16/totally_safe_transmute-line-by-line - вот, очень даже safe код, исходя из этого определения.
* Является ли отношение "не содержит unsafe" транзитивным, потому что в stdlib есть unsafe.
Обычно после этого коллеги начинают рассказывать про soundness кода.
Что такое soundness?
По сути, это синоним "мамой клянусь". То есть, у нас нет формального доказательства того, что код ведет себя так, как надо, но автор кода сумел уболтать других людей, что это правда.
Поэтому вот вам самая мякотка - Rust является memory "мамой клянусь"-safe language.
Проблема в том, что и С, и С++ - это тоже "мамой клянусь"-safe language, а если там в коде ошибка - то это
Я даже готов согласиться, что в классе "мамой клянусь"-safe языков, Rust один из наиболее безопасных (в каком-то смысле), но на этом все.
Telegram
commit -m "better"
Про логические уловки.
Люди довольно часто, осознано, или нет, оставим это на их совести, пользуются логическими уловками.
3 моих любимых:
https://ru.wikipedia.org/wiki/%D0%9F%D1%80%D0%B5%D1%81%D1%83%D0%BF%D0%BF%D0%BE%D0%B7%D0%B8%D1%86%D0%B8%D1%8F
ht…
Люди довольно часто, осознано, или нет, оставим это на их совести, пользуются логическими уловками.
3 моих любимых:
https://ru.wikipedia.org/wiki/%D0%9F%D1%80%D0%B5%D1%81%D1%83%D0%BF%D0%BF%D0%BE%D0%B7%D0%B8%D1%86%D0%B8%D1%8F
ht…
😁29❤10🤡7👍5🔥4👎3🤔1🤮1👌1🐳1
Тем временем, у моей реализации #runsvdir https://xn--r1a.website/itpgchannel/1998 уже есть 4 open source альтернативы:
* оригинал из runit
* мой вариант на python
* вариант на Rust (https://github.com/maratik123/runsvdir)
* и мой же вариант на С++ (https://github.com/pg83/ix/blob/main/pkgs/bin/ix/runsvdir/cpp/m.cpp)
На приложенном скриншоте - все 4, на одной и той же конфигурации.
Хуже всех (по потреблению памяти) python, потом идет оригинальный из runit (меня это удивило, он, вроде как, на С), потом вариант на Rust, а пижже всех - мой, на С++.
Оптимизациями памяти я даже не занимался (посмотрите код, он максимально дубовый), можно лучше.
* оригинал из runit
* мой вариант на python
* вариант на Rust (https://github.com/maratik123/runsvdir)
* и мой же вариант на С++ (https://github.com/pg83/ix/blob/main/pkgs/bin/ix/runsvdir/cpp/m.cpp)
На приложенном скриншоте - все 4, на одной и той же конфигурации.
Хуже всех (по потреблению памяти) python, потом идет оригинальный из runit (меня это удивило, он, вроде как, на С), потом вариант на Rust, а пижже всех - мой, на С++.
Оптимизациями памяти я даже не занимался (посмотрите код, он максимально дубовый), можно лучше.
❤17👍6🔥4🤔3🤯2🤡1🆒1
Фига я снова в телевизоре!
Болты Генона я тоже читаю, хорошие каналы.
Болты Генона я тоже читаю, хорошие каналы.
👏9👍5❤3🔥1
Forwarded from Технологический Болт Генона
Тут @SergeySabbath, закинул мой канал в тройку своих самых любимых. Скрывать не буду, мне очень приятно.
https://xn--r1a.website/IT_Friday/646
А накидайте в комменты свои любимые каналы по IT-шной тематике или около неё. Можно несколько.
Может я и подписчики найдут что-то новое и интересное для себя
Если брать строго IT, то я регулярно слежу за
https://xn--r1a.website/SysadminNotes
https://xn--r1a.website/itpgchannel
https://xn--r1a.website/dereference_pointer_there
https://xn--r1a.website/sysadmin_tools
Есть большое количество ещё других, ни о ком не забыл и всех помню, но как-нибудь сделаю ещё отдельный пост 🌝
https://xn--r1a.website/IT_Friday/646
А накидайте в комменты свои любимые каналы по IT-шной тематике или около неё. Можно несколько.
Может я и подписчики найдут что-то новое и интересное для себя
Если брать строго IT, то я регулярно слежу за
https://xn--r1a.website/SysadminNotes
https://xn--r1a.website/itpgchannel
https://xn--r1a.website/dereference_pointer_there
https://xn--r1a.website/sysadmin_tools
Есть большое количество ещё других, ни о ком не забыл и всех помню, но как-нибудь сделаю ещё отдельный пост 🌝
Telegram
IT Friday
Топ 3 моих самых любимых канала:
🟢Технологический болт Генона
Самое интересное для инженерных инженеров от Толика, он же @rusdacent
Прям обожаю этот канал, самое актуальное из ИТ, уязвимости, кишочки, всякое необычное и полезняшки
🟢Ever Secure
Безопасная…
🟢Технологический болт Генона
Самое интересное для инженерных инженеров от Толика, он же @rusdacent
Прям обожаю этот канал, самое актуальное из ИТ, уязвимости, кишочки, всякое необычное и полезняшки
🟢Ever Secure
Безопасная…
🔥11❤6🌭3👍2🆒1
Технологический Болт Генона
Тут @SergeySabbath, закинул мой канал в тройку своих самых любимых. Скрывать не буду, мне очень приятно. https://xn--r1a.website/IT_Friday/646 А накидайте в комменты свои любимые каналы по IT-шной тематике или около неё. Можно несколько. Может я и подписчики найдут…
https://xn--r1a.website/tech_b0lt_Genona
https://xn--r1a.website/lobstersfeed
https://xn--r1a.website/theaftertimes
https://xn--r1a.website/hackernewslive
https://xn--r1a.website/gentoomemes
https://xn--r1a.website/programmer_memes
https://xn--r1a.website/achpochmac_yesterday
https://xn--r1a.website/open_source_friend
https://xn--r1a.website/dereference_pointer_there
https://xn--r1a.website/mem_b0lt_Genona
https://xn--r1a.website/psauxww
https://xn--r1a.website/ctobtch
https://xn--r1a.website/thisnotes
https://xn--r1a.website/digital_insights
https://xn--r1a.website/dotrubic
https://xn--r1a.website/j_random_cto
https://xn--r1a.website/gepardchan
https://xn--r1a.website/cpu_design
https://xn--r1a.website/reactos2021
https://xn--r1a.website/optozorax_dev
https://xn--r1a.website/whygnomesucks
https://xn--r1a.website/dlemire
https://xn--r1a.website/cxx95
https://xn--r1a.website/techmumble
https://xn--r1a.website/reverse13
мой список, in no particular order
https://xn--r1a.website/lobstersfeed
https://xn--r1a.website/theaftertimes
https://xn--r1a.website/hackernewslive
https://xn--r1a.website/gentoomemes
https://xn--r1a.website/programmer_memes
https://xn--r1a.website/achpochmac_yesterday
https://xn--r1a.website/open_source_friend
https://xn--r1a.website/dereference_pointer_there
https://xn--r1a.website/mem_b0lt_Genona
https://xn--r1a.website/psauxww
https://xn--r1a.website/ctobtch
https://xn--r1a.website/thisnotes
https://xn--r1a.website/digital_insights
https://xn--r1a.website/dotrubic
https://xn--r1a.website/j_random_cto
https://xn--r1a.website/gepardchan
https://xn--r1a.website/cpu_design
https://xn--r1a.website/reactos2021
https://xn--r1a.website/optozorax_dev
https://xn--r1a.website/whygnomesucks
https://xn--r1a.website/dlemire
https://xn--r1a.website/cxx95
https://xn--r1a.website/techmumble
https://xn--r1a.website/reverse13
мой список, in no particular order
Telegram
Технологический Болт Генона
До Декарта никогда не существовало рационализма.
Музыкальный Болт Генона: @mus_b0lt_Genona
Мемный Болт Генона: @mem_b0lt_Genona
Кадровый Болт Генона @kadr_b0lt_Genona
Обратная связь: @rusdacent
Музыкальный Болт Генона: @mus_b0lt_Genona
Мемный Болт Генона: @mem_b0lt_Genona
Кадровый Болт Генона @kadr_b0lt_Genona
Обратная связь: @rusdacent
👍12❤🔥6🔥3😁2❤1
#Kent Предложка:
"Свежую драму от Кента подвезли. Читаешь, думаешь, блин, несправедливо человека банят: https://www.patreon.com/posts/trouble-in-116412665
потом открываешь лор, а там: https://lore.kernel.org/all/citv2v6f33hoidq75xd2spaqxf7nl5wbmmzma4wgmrwpoqidhj@k453tmq7vdrk/"
https://www.phoronix.com/news/Bcachefs-Uncertain-Kernel-Issue
https://www.opennet.ru/opennews/art.shtml?num=62276
"Свежую драму от Кента подвезли. Читаешь, думаешь, блин, несправедливо человека банят: https://www.patreon.com/posts/trouble-in-116412665
потом открываешь лор, а там: https://lore.kernel.org/all/citv2v6f33hoidq75xd2spaqxf7nl5wbmmzma4wgmrwpoqidhj@k453tmq7vdrk/"
https://www.phoronix.com/news/Bcachefs-Uncertain-Kernel-Issue
https://www.opennet.ru/opennews/art.shtml?num=62276
Patreon
Trouble in the kernel | Kent Overstreet
Get more from Kent Overstreet on Patreon
😁12🔥5👍3🐳2❤1