Linker Unsafe
220 subscribers
182 photos
24 videos
18 files
859 links
Собираю ржавые и лямбдообразные новости, прикольные цитатки с форумов, ссылки на статьи и всё такое. В-общем, сюда я тащу такие крупицы, которые мне будет жаль потерять в цифровой бездне. Возможно, они покажутся интересными и вам.

Фи сюда: @nlinker
Download Telegram
Одна из моих любимых песен с тех пор, как её один супермозг визуализировал на 64 ядрах (128 аппаратных потоках) процессора AMD Threadripper 3990x.👇
Любопытное. Если погуглить по "rust tracing" выпадает такая красота.
Дженерики для го приняли тоже. Хороший пример фичи системы типов, которую нужно планировать заранее с самого начала, иначе вкорячивать придётся не самым красивым образом.
С другой стороны отличная демонстрация, что "вода камень точит".
Гугл спонсирует переписывание разных штук на Rust. Представьте, сначала тулзы, потом и сам POSIX, а потом появится и safe-слой для сисколлов :-P (ага, размечтался..)

https://security.googleblog.com/2021/02/mitigating-memory-safety-issues-in-open.html
Модель трёх тел хоть и сложна и аналитически не решается, но её всё равно нужно усложнить ещё дальше, чтобы она стала реалистичной. Например, добавить радиус планеты в параметры и столкновения между планетами, с образованием отлетающих кусков, которые становятся новыми планетами. Есть теория, что наша Луна — это отколовшийся когда-то кусок Земли в результате столкновения с каким-то шальным астероидом.
This media is not supported in your browser
VIEW IN TELEGRAM
Initial states:
m: 0.950 x: 0.841 y: -2.945 vx: 0.055 vy: 0.867
m: 7.171 x: -1.359 y: 2.404 vx: 0.573 vy: -0.282
m: 1.920 x: -2.252 y: -4.907 vx: -0.063 vy: 0.047
Interest-ness score: 61
https://www.opennet.ru/opennews/art.shtml?num=54516

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

Очень специфическая проблема, редчайший случай в софте на C++🤔
Одно из самых интересных траекторий планет задачи трёх тел, маленькую планету колбасит просто!
This media is not supported in your browser
VIEW IN TELEGRAM
Initial states:
m: 8.824 x: 2.963 y: -3.744 vx: 0.181 vy: 0.671
m: 0.105 x: 5.368 y: 6.131 vx: -0.438 vy: -0.021
m: 5.209 x: -3.997 y: 4.265 vx: 0.002 vy: 0.486
Interest-ness score: 73
Оставляю для себя потом прочитать, довольно важная тема оптимизации программ на Rust в одном единственном посте. Старый пост Achieving warp speed with Rust, 2017-го аж года, но при этом вроде бы актуальный. Единственное но, разные штуки, вроде test::black_hole пока доступны только в nightly и для них нужно включать #![feature(test)].
Навеяно постом Ильи
https://t.iss.one/optozorax_dev/298

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

Особенность этой игры в том, что после того, как были сгенерировано 5 случайных чисел, нужно было этот массив проверить на то, содержится ли там 3, 4, 5 одинаковых числа и если да, выяснить, что это за числа, кроме этого есть ещё комбинации 1,2,3,4,5 и 2,3,4,5,6.

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

И однажды мне неожиданно пришла простая мысль: давайте сделаем массив длины 6, s = [s1, s2, s3, s4, s5, s6] и в нём будем накапливать количество выпавших на текущем ходу единиц, двоек и так далее шестёрок. Этот препроцессинг сделал проверку условий элементарным, скажем, "выпало ли 4 единицы" нам нужно проверить выполнено ли s1 == 4.

Прежние мои попытки я с радостью удалил и переписал проверку паттернов (и соответственно подсчёт очков). Я был так воодушевлён, что решил было сделать алгоритм игры, то есть бота, чтобы мне поиграть против компьютера. Увы, такого рода задачи уже были мне не по зубам вплоть до универа, когда я начал грызть "Программирование игр" Адельсона-Вельского и компании.
Та самая книжка
Интересное интервью с создателем Factorio известным как kovarex. Длинный 2.5-часовой подкаст, где товарищ kovarex рассказывает, что его связывало со старкрафтом, и как он пришёл к идее создания Factorio.
(Factorio — это такая игра, где вместо раздачи команд юнитам игрок создаёт всё более и более высокоуровневые структуры для решения стратегических задач).

https://makingcomputerdothings.com/the-undermind-episode-45-an-interview-with-kovarex-the-creator-of-factorio/
Воу воу, помедленнее там
https://www.zdnet.com/article/linus-torvalds-on-where-rust-will-fit-into-linux/

Линус говорит о том, где Раст будет зажигать на линуксе (хинт: на уровне приложений, дрова и утилиты, в ядро Линус его не пустит).
А вы знали, что сегодня International Waffle Day?
Давайте поздравим Вафеля (t.iss.one/ihatereality), я уже съел вафельку за его здоровье🖐