HackerTube

THE VIDEO SHELF · async io in zig

Modeling Data Concurrency w/ Asynchronous I/O in Zig - RedisConf 2020

Zig creator Andrew Kelley's RedisConf 2020 talk on modeling data flow with asynchronous I/O in Zig. It explains how Zig's async/await avoids function coloring, and Loris Cro demonstrates OkRedis, a zero-allocation Redis client.

Why HN readers recommended it

HN recommends it as the clearest explanation of how Zig achieves colorless async/await.

This is a summary from the source dataset, not an endorsement by Hacker News or the video creator.

Video & recommendation details

Creator / channel
Redis
Topic
async io in zig
Format
talk
Level
intermediate
HN recommenders in dataset
3
HN mentions in dataset
4
Recommendation years in dataset
2020–2021

These counts and years describe the included Hacker News records; they are not YouTube views or the video’s publication date.

From the original HN conversations

Excerpts from the recorded comments. Follow each source for the full comment and surrounding discussion.

  • I really can't agree with this premise after seeing how Zig implements color-less async/await: [LINK] I highly recommend watching Andrew Kelley's video (linked in that article) on this topic: [VIDEO]

    kbd on Hacker News · 2021-04
    In Red and blue functions are a good thing
  • There is an interesting approach in Zig to explicitly kick call frames to achieve colorless asyncness. [VIDEO]

    bvrmn on Hacker News · 2020-05
    In What Color Is Your Function? (2015)
  • I recently wrote an IO abstraction over io_uring using Zig's async/await. Here's how you would do a write()/fsync()/read() with this ( [LINK] ): const offset: u64 = 0; const bytes_written = try io.write(fd, buffer_write[0..], offset); try io.fsync(fd); const bytes_read = try io.read(fd, buffer_read[0..], offset); Other …

    jorangreef on Hacker News · 2021-02
    In Comparison of Rust async and Linux thread context switch time and memory use

Summaries, classifications and recommendation records are from the HackerTube source dataset. Read about this library and its limitations.