Гетерогенные списки в Rust и их суперсилы. Антон Михайлов

  Рет қаралды 1,875

Видео с мероприятий {speach!

Видео с мероприятий {speach!

Күн бұрын

Одна из претензий к статически типизированным языкам часто состоит в том, что в них трудно манипулировать данными, которые являются просто некими наборами полей. Не смотря на то, что эта претензия ортогональна статичности системы типов, она часто справедлива на практике, поскольку большинство применяемых на практике языков программирования (включая Rust) имеют номинативную, а не структурную систему типов.
Данный доклад демонстрирует, как, использовав в качестве промежуточной абстракции гетерогенные списки - вещь, обычно применяемая в функциональном программировании - можно покрыть возможности, которые могли бы предоставить отсутствующие в Rust фичи: структурная типизация и вариадические дженерики.
В частности, как можно преобразовывать структуры со схожими наборами полей из одной в другую без бойлерплейта, как вынимать произвольные поля из JSON, не выписывая вручную по типу на каждую комбинацию, и как объединять вместе типы с общим обобщённым поведением так, чтобы выбирать нужный по типу требуемого результата - всё типобезопасно, без бойлерплейта, без unsafe и с нулевой стоимостью в рантайме.

Пікірлер: 1
@Brainsburn
@Brainsburn 2 жыл бұрын
Большое спасибо за видео. Но выравнивайте, плз, громкость. Заставка громкая, а голос едва слышно. Сделал громкость так, чтобы было слышно голос, после включил другое видео и чуть не оглох )
Spongebob ate Patrick 😱 #meme #spongebob #gmod
00:15
Mr. LoLo
Рет қаралды 12 МЛН
The CUTEST flower girl on YouTube (2019-2024)
00:10
Hungry FAM
Рет қаралды 55 МЛН
Win This Dodgeball Game or DIE…
00:36
Alan Chikin Chow
Рет қаралды 30 МЛН
Времена жизни в Rust
19:29
Bitωise
Рет қаралды 4,2 М.
Rust: Shared-State Concurrency
7:06
The Dev Method
Рет қаралды 12 М.
Как написать "Hello World!" на ассембли
53:58
БоркаБорик
Рет қаралды 12 М.
Как бы я начал учить кодинг сейчас?
12:15
Rich Terminal Interfaces with Ratatui
9:31
chris biscardi
Рет қаралды 35 М.
Микросервисы Простыми Словами за 1 Час
48:56
Spongebob ate Patrick 😱 #meme #spongebob #gmod
00:15
Mr. LoLo
Рет қаралды 12 МЛН