1.83K subscribers
3.3K photos
131 videos
15 files
3.57K links
Блог со звёздочкой.

Много репостов, немножко программирования.

Небольшое прикольное комьюнити: @decltype_chat_ptr_t
Автор: @insert_reference_here
Download Telegram
Forwarded from я что-то �� и всё ����
😁191
Forwarded from я что-то �� и всё ����
🔁 ko 🦊🌸
little-known fact, but PHP is actually short for "please headpat". because the programmers who have to deal with the language need it
8
Memory safety — это во многом навязанный Западом стереотип последних лет
👍38🌚1
#prog #rust #rustlib #amazingopensource

Symphonia is a pure Rust audio decoding and media demuxing library supporting AAC, ADPCM, ALAC, FLAC, MKV, MP1, MP2, MP3, MP4, OGG, Vorbis, WAV, and WebM.

Features

* Decode support for the most popular audio codecs with support for gapless playback
* Demux the most common media container formats
* Read most metadata and tagging formats
* Automatic format and decoder detection
* Basic audio primitives for manipulating audio data efficiently
* 100% safe Rust
* Minimal dependencies
* Fast with no compromises in performance!

И последний пункт — не пустой звук: согласно бенчмаркам, производительность сопоставима с FFMpeg (правда, тестировался только однопоточный режим)
🔥7👍1
Forwarded from я что-то �� и всё ����
🔁 Bash.org.ru (типа)
1: как откасить от армии?
2: замутить с дочкой военкома
1: а если у него мальчик?
2: ну если ты такой принципиальный то иди в армию
😁203💩2🤡2
Forwarded from KMes
😁28🔥3
👍164💩3👎1
Апостиляга
👍4
Извините, я просто обязан это выложить
Forwarded from байборо♠️
🔥12👍1😁1
Forwarded from Agagagagagagagaggagagaggaggaggaga
Вот сейчас все орут с Яндекса, а они дождутся, когда все самые кривые места разойдутся мемасами по телеге, и отрефакторят все косяки, не вложив ни часа в анализ. Stonks, не иначе
🔥34😁5🤡2🌚1
👍9🤔3💩2
#prog #rust #rustreleasenotes

Вышла версия Rust 1.67.0! В этот раз заметных изменений не так уж и много. Вот полный список, если что. Как всегда, выпишу только то, что интересно мне.

▪️До стейбла докатилось изменение, о котором я уже писал: #[must_use] на асинхроных функциях теперь предупреждает не только о неиспользуемой футуре, возвращаемой функцией, но и о неиспользуемом возвращённом этой футурой значении.

▪️Ещё одно такое изменение: замена реализации MPSC-канала из std.

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

▪️И ещё одно: NonZero*::BITS.

▪️Трейт Sized стал коиндуктивным. Иными словами, если задача доказать ограничение T: Sized приводит к необходимости доказать это же самое ограничение, образуя цикл в логике, то вместо ошибки компилятор теперь выводит, что тип таки реализует Sized. На практике это означает, что рекурсивные типы, параметризованные типом индирекции, теперь нормально компилируются. Скажем, этот код не компилировался до этого изменения и компилируется после:

trait Allocator {
type Allocated<T>;
}

enum LinkedList<A: Allocator> {
Head,
Next(A::Allocated<Self>),
}

▪️Компилятор слегка поумнел в плане вывода типов для замыканий.

Остальное в подробных заметках о релизе.
👍11
Forwarded from я что-то �� и всё ����
👍22😁7
K P A C U B O
👍20
Forwarded from я что-то �� и всё ����
Оказывается, пайдантик может молча дропнуть создание класса, если немного накосячить с объявлением

Узнала я об этом при попытке проверить работу алиасов. Если базовая модель объявляет поле, а наследник переобъявит его через присваиваение pydantic.Field(alias=...), но *не* укажет тайпхинт, пайдантик дропнет вообще весь класс, как будто его и не было никогда

Причём достаточно одного такого поля, чтобы весь класс улетел в мусорку
🤣13👍4👎3😁1