ar
Feedback
Блог*

Блог*

الذهاب إلى القناة على Telegram

Блог со звёздочкой. Много репостов, немножко программирования. Небольшое прикольное комьюнити: @decltype_chat_ptr_t Автор: @insert_reference_here

إظهار المزيد
1 927
المشتركون
+124 ساعات
+17 أيام
-530 أيام
أرشيف المشاركات
#music Это слишком хорошая музыка для игры на смартфон. youtube.com/watch?v=j0ixU3dAU0w

photo content

#prog #go 6 февраля вышла версия Go 1.22. Среди прочего в стандартную библиотеку добавлен пакет math/rand/v2. Примечательно это по двум причинам. Первая: это первый случай, когда в стандартную библиотеку Go добавляют вторую версию пакета. На мой взгляд, это вполне себе довод в пользу того, чтобы не делать std слишком богатой. (Конечно, тут ещё далеко до безобразия Python с urllib3, но кто знает, может, и до этого дойдёт). Вторая: в proposal на этот пакет упомянуто следующее: 2. Remove Source.Seed, Rand.Seed, and top-level Seed. Top-level Seed is deprecated as of Go 1.20. Source.Seed and Rand.Seed assume that the underlying source can be seeded by a single int64, which is only true of a limited number of sources. Specific source implementations can provide Seed methods with appropriate signatures, or none at all for generators that cannot be reseeded; the details of seeding do not belong in the general interface. [выделение моё] В оригинальном дизайне rand получение случайных значений действовало через тип Rand, который оборачивал значение, реализующее интерфейс Source: type Source interface { Int63() int64 Seed(seed int64) } В v2 метод Seed убрали, а метод Int63 поменяли на Int64 — и совершенно верно, ибо в этом интерфейсе торчали уши конкретной дефолтной реализации Source. Однако заявление "the details of seeding do not belong in the general interface", как мне кажется, вызвано не общими соображениями, а ограничениями Go. Именно, в идеале у каждого источника случайности должен быть свой тип для сида — но в Go нельзя сделать тип, который является частью интерфейса и который может быть определён реализацией. Для сравнения, в растовом rand инициализация из начального значения вынесена в отдельный трейт SeedableRng, где сид определяется через ассоциированный тип. =========== Другая вещь, которая куда как более стрёмная — это тот факт, что тип Rand может запрашивать данные из Source только через метод Int64, а потому остальные методы не могут эксплуатировать тот факт, что они работают с конкретным типом источника случайности, и потому не могут использовать специфичные для этих типов оптимизации. В частности, реализация Rand.Int32 попросту зовёт Int64 на внутреннем Source и делает битовый сдвиг, отбрасывая младшие 33 бита. Если Rand.Int32 вызывается в цикле, то выходит, что где-то половина работы источника случайности уходит в никуда.

#prog #rust Немного про мемоизацию в Rust. https://t.me/psauxww/1134

#prog #rust #article Rust web frameworks have subpar error reporting Автор излагает свои требования к репорту и обработке ошибок (TL;DR: ошибки не должны теряться ни для клиента веб-сервера, ни для админа веб-сервера), показывает, как в этом отношении не работают ни axum, ни actix-web (хотя последний близок) и показывает, как эта проблема решается в его новом веб-фреймворке, pavex.

#prog #article В этой статье лодочник ссылается на Futures aren't ersatz threads. Говорящее название. Futures present a concurrent programming model that is appealing on its own [выделение моё]. They should not be seen as a poor-man’s version of threads.

#prog #rust #rustasync #article Цитата из статьи лодочника Let futures be futures, в которой он аргументирует против попыток унифицировать синхронный и асинхронный код.

photo content

#prog #rust #rustlib embedded-cli — CLI in Rust with autocompletion, subcommands, options, help and history for embedded systems (like Arduino or STM32) По понятным причинам требует предоставления внешних буферов для обработки аргументов.

Что такое глубокая связь? Это трансатлантический оптоволоконный кабель.

Телега такая телега
Телега такая телега

https://daily.afisha.ru/news/84557-sibirskie-aktivisty-usmotreli-propagandu-lgbt-v-duolingo-i-potrebovali-zablokirovat-prilozhenie/ Оригинальный источник — сайт vn . ru, но он у меня не открывается

Вы не поверите, но в России потребовали заблокировать Duolingo. Активисты нашли в приложении фразы, которые сочли пропагандой
+2
Вы не поверите, но в России потребовали заблокировать Duolingo. Активисты нашли в приложении фразы, которые сочли пропагандой «нетрадиционных отношений». Например:
Бен и Питер любят друг друга. Они геи
Клара встретила свою жену Марию в гей-баре
Они думают, что мы друзья, но мы — гей-пара
У моей бабушки есть девушка
Питер и Макс счастливы в браке
Пожаловались на зелёную сову родители уфимских школьников, которые якобы не знают, как пояснить эти фразы детям, не травмировав их психику

я это даже комментировать не буду, я ору.
я это даже комментировать не буду, я ору.

#meme про переключатель

photo content

Сыч (сычует)
Сыч (сычует)

В сеть утекли фото админа

photo content