HackerTube
HomeLongsLikedHistoryWatch laterCategoriesPlaylistsSettings

Writing a Wayland Compositor in Zig - Isaac Freund

Zig SHOWTIME4 HN recommenders · recommended in 3 months, 2021-2021
YouTube
26K views · 6 years ago · talk · dated

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.

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

C, C++, Rust, Go & systems languagesLinux & open-source ecosystems#zig#wayland#rivercompositor#cinterop#systemsprogramming

5 comments from Hacker News

@rmanolis2021 · in “My negative views on Rust”

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 ▶ this video

RecommendsView on HN
@1_player2021 · in “Zig 0.9.0”

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: ▶ this video

Strongly recommendsView on HN
@jorangreef2021 · in “River – A dynamic tiling Wayland compositor”

The author of River has also done some fantastic talks, on Zig ShowTime [1] and at FOSDEM '21 [2]. [1] "Writing a Wayland Compositor in Zig" - ▶ this video [2] "Zig: the perfect language for a Wayland Compositor?" - link

RecommendsView on HN
@DyslexicAtheist2021 · in “Should You Write a Wayland Compositor?”

this talk is phenomenal thank you. he explains (timestamp: ▶ this 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?

Strongly recommendsView on HN
@kristoff_it2021 · in “Should You Write a Wayland Compositor?”

Another Wayland compositor written in Zig is ifreund/river [1]. Isaac, the author, gave a talk on choosing C vs Rust vs Zig on Zig SHOWTIME a while back [2] and also has an upcoming talk at FOSDEM 21 [3] [1] link [2] ▶ this video [3] link

CitesView on HN
The Road to Zig 1.0 - Andrew Kelley59:48

The Road to Zig 1.0 - Andrew Kelley

ChariotSolutions
168K views • 7 years ago
[#36] Zig Roadmap 2024 - Andrew Kelley1:00:23

[#36] Zig Roadmap 2024 - Andrew Kelley

Zig SHOWTIME
66K views • 2 years ago
2021: Year of the Linux Gaming Desktop - Andrew Kelley42:38

2021: Year of the Linux Gaming Desktop - Andrew Kelley

Zig SHOWTIME
15K views • 5 years ago
Zig: A programming language designed for robustness, optimality, and clarity –  Andrew Kelley54:14

Zig: A programming language designed for robustness, optimality, and clarity –  Andrew Kelley

Recurse Center
75K views • 8 years ago
Zig Roadmap 2023 - Andrew Kelley43:20

Zig Roadmap 2023 - Andrew Kelley

Zig SHOWTIME
77K views • 4 years ago
Zig 2026: No-AI Policy, $670K Foundation, Left GitHub & Why Zig Isn’t 1.0 - Andrew Kelley Explains1:13:11

Zig 2026: No-AI Policy, $670K Foundation, Left GitHub & Why Zig Isn’t 1.0 - Andrew Kelley Explains

JetBrains
979K views • 5 months ago
Is It Time to Rewrite the Operating System in Rust?1:09:18

Is It Time to Rewrite the Operating System in Rust?

InfoQ
310K views • 7 years ago
Carbon Language Successor Strategy: From C++ Interop to Memory Safety - Chandler Carruth - CppNow 231:38:57

Carbon Language Successor Strategy: From C++ Interop to Memory Safety - Chandler Carruth - CppNow 23

CppNow
24K views • 3 years ago
Andrew Kelley: A Practical Guide to Applying Data Oriented Design (DoD)46:40

Andrew Kelley: A Practical Guide to Applying Data Oriented Design (DoD)

ChimiChanga
415K views • 2 years ago
The Real Story Behind Wayland and X - Daniel Stone (linux.conf.au 2013)45:35

The Real Story Behind Wayland and X - Daniel Stone (linux.conf.au 2013)

Mladen Mijatov
104K views • 13 years ago
Interfacing D To Legacy C++ Code1:21:23

Interfacing D To Legacy C++ Code

NWCPP - Northwest C++ Users Group
5K views • 11 years ago
Lang NEXT 2014 Panel  Systems Programming in 2014 and Beyond1:05:56

Lang NEXT 2014 Panel Systems Programming in 2014 and Beyond

25msr
3K views • 8 years ago
[Linux.conf.au 2013] - The real story behind Wayland and X45:35

[Linux.conf.au 2013] - The real story behind Wayland and X

HackersOnBoard
35K views • 13 years ago
GoingNative 2012 - Day 2 - Clang1:00:54

GoingNative 2012 - Day 2 - Clang

aghuttun
13K views • 13 years ago
Rust: A Language for the Next 40 Years - Carol Nichols55:08

Rust: A Language for the Next 40 Years - Carol Nichols

ChariotSolutions
367K views • 7 years ago
Qt 5 based 3D Wayland compositor2:26

Qt 5 based 3D Wayland compositor

Samuel Rødal
133K views • 14 years ago
Origins of Go Concurrency style by Rob Pike38:19

Origins of Go Concurrency style by Rob Pike

jasonofthel33t
28K views • 14 years ago
ElixirConf 2021 - Isaac Yonemoto - Zig (heart) Elixir48:11

ElixirConf 2021 - Isaac Yonemoto - Zig (heart) Elixir

ElixirConf
4K views • 5 years ago
Rust's Journey to Async/Await48:46

Rust's Journey to Async/Await

InfoQ
90K views • 6 years ago
Introducing a Memory-Safe Successor Language in Large C++ Code Bases - John McCall - CppNow 20231:22:21

Introducing a Memory-Safe Successor Language in Large C++ Code Bases - John McCall - CppNow 2023

CppNow
18K views • 3 years ago