HackerTube.dev

Writing a Wayland Compositor in Zig - Isaac Freund

Zig SHOWTIME · 25.8K views · 2020-05-31 · 42:20

Open on YouTube ↗

If playback is restricted in your region, try opening the original video. Use Mark watched to add it to your marked videos.

Overview

Isaac Freund, author of the River Wayland compositor, talks about writing a Wayland compositor in Zig. He covers why he chose Zig over C and Rust and how Zig can wrap a hairy C library.

On Hacker News

HN recommends it as a phenomenal talk on Zig's C interop and on choosing between C, Rust and Zig for systems work.

Recommended by 4 HN people across 3 months · HN mentions 2021–2021

Topics

Search by tags

What people said

1_player · 2021-12 · Strong recommendation

Congratulations! And welcome Isaac, I loved his Zig+Wayland screencast [1], where he explained very engagingly how Zig is able to embrace and extend a pretty hairy C library and make it more memory safe, without forcing the implementor to rewrite or painfully try to bend it to the strict or idiosyncratic rules of the language, as it may happen with Rust or even Go. I can't wait for 1.0! Or at least until the docs are a bit more accessible... :) 1: [VIDEO]

Read the original HN comment ↗
DyslexicAtheist · 2021-01 · Strong recommendation

this talk is phenomenal thank you. he explains (timestamp: [VIDEO] ) why he didn't go with Rust and it's quite puzzling what he says. I don't know enough about Rust if that's the case. To rephrase: "Rust was an obvious contender but it lacked good support for wlroots. there was a project which attempted to address this but they gave up after 12 months of work and 1000 commits. Rust's strong safety guarantees and memory management conflict with wlroots which assumes a longer lifetime of pointers. If you unplug your monitor with wlroots this pointer receives an event that means the output has disappeared and needs to be validated (see here [LINK] ).* This is strange because Rust positions itself as a system language so I'd have imagined these scenarios are all over the place and unsafe Rust would be the way most of this is solved?

Read the original HN comment ↗
rmanolis · 2021-12 · Recommendation

Rust does not bind well with C for this reason it can not become a system level programming [LINK] However, there is another programming language that does not need bindings. It is called Zig and here it explains how it solves the same problem [VIDEO]

Read the original HN comment ↗

Sources

Video by Zig SHOWTIME, played through YouTube.

Data and selection notes

HN summaries and labels may contain AI errors. HN dates refer to discussions, not video publication.

HN Library: HackerTube export (2026-10-31) and open-index/hacker-news. Upstream summaries and classifications may contain AI errors.

Views, duration and playback status refresh separately from the published catalog. When an update fails, existing data remains visible.

Selection checks
  • SaaS & AI candidates: Topic keywords do not match
  • Editor-approved picks: Editorial review is required

Rule matches identify candidates. They do not guarantee video quality or financial results.

About the library and its sources