What's Zig got that C, Rust and Go don't have? (with Loris Cro)

preview_player
Показать описание
Zig is a programming language that’s attempting to become “the new C” - the language of choice for low-level systems programming and embedded hardware. Going into that space not only puts it in competition with C and C++, but also other newcomers like Rust and Go. So what makes Zig special?

Joining us to discuss it is Loris Cro from the Zig Foundation. We talk through Zig’s reasons to exist, its language design features, which parts of the C ecosystem it's tackling, and how the Zig Foundation is set up for the long-term health of the language.





0:00 Intro
2:08 Podcast
1:22:08 Outro

#programming #programminglanguages #software #zig #ziglang #llvm #rust #go
Рекомендации по теме
Комментарии
Автор

At first, I just saw a Targaryen and a Tarley (Game of Thrones) talking but then... anyway, thank you YT algorithm for recommending this talk between Kris of House Targaryen and Loris of House Tarly about:

00:00 The trend to replace C: wise and terrifying
02:58 Why Zig needs to exist?
04:27 On C Metaprogramming, etc.
04:55 C++: It's power and complexity
05:52 Forget Language war
06:54 "Focus on debugging your application rather than debugging your programming language knowledge."
07:17 Why not Rust?
08:53 Why not Go?
10:47 On reusing existing C but leaving its ecosystem
11:24 Zig vs Design Constraints
13:55 Zig LOVES C and C++
15:04 Zig is LOVED by Go and Rust
15:59 Zig's built-in C compiler SHOCKS Kristoff
16:37 When Apple released M1, Zig was the first...
20:08 Built-in linker and "backends" to get past the LLVM
24:05 Going all the way down to the lower level
24:46 Timeline depends Talent Quality and Quantity
25:21 The Call to Transition from "4 hours" to "20 secs" ecosystem
26:50 New to Zig Programming, what to expect?
27:10 Zig on Comptime and Runtime
27:51 Zig's invitation to JavaScript or Python Developers
34:10 How C interop works?
37:08 Importing C header files, internal auto bridging file
41:49 Zig and Go's Defer, C++ Destructors, Zig's Defer on C
43:31 "Zig is better at using C libraries than C"
44:12 Pointer arithimetic?
46:16: Crucial things on pointers
48:55 Memory Management
51:37 Allocator's leak detection in debug mode
52:33 Zig's correct way of LEAKING MEMORY: Debug vs Release Mode
56:03 CompTime, Runtime, Infinite loops, Undecidable things
1:02:28 Generics, Lisp Macros, Zig's Metaprogramming
1:05:38 Comptime Code checking and emitting comp error
1:09:31 Zig as a 501(c)(3) Non-profit Foundation
1:12:34 Support Contract Zig-cross-compiling C and C++ backend services
1:13:27 "You cannot make a successful language unless you are supported by a big tech company"
1:14:27 Design Consistency vs Kitchen Sink Evolution
1:18:31 Getting Started with Zig: Learning Recommendation
1:21:10 Conclusion
1:22:57 A Fun Easter Egg

DaguobDagunanLex
Автор

Love the combination of you asking great questions and letting your guest talk, and Loris answering questions aware that people with incomplete knowledge are listening. Two great communicators yield a very satisfying in-depth talk :)

UliTroyo
Автор

Finer Timestamps for the "Podcast" part

7:04 Why not Rust?
8:52 Why not Go?
11:25 Zig's answer to requirements' constraints?
15:59 Zig has a C compiler built-in?
20:06 Built-in linker & backends
26:39 User/Programmer space?
34:08 How C interop works?
44:11 Pointer arithimetic?
48:53 Memory Management?
56:03 CompTime & generic types?
1:06:06 Eg. & emit Compile Error
1:09:30 Funding?
1:18:30 Getting Started
1:21:10 Conclusion

yash
Автор

I don’t know what you did or how I found this video but this popped in my recommended and I gotta say, this is by far the best developer podcast I’ve ever listened to. Please change nothing. You ask excellent questions, you’re very attentive to your guest, and you allow them the freedom for them to go deep in order to open up a world of knowledge to the curious listener (such as myself).

Thank you so much for this wonderful content I am so grateful I happened upon and I am definitely subscribed now!

jordanhubscher
Автор

zig is a very ambitious project and I love it. I hope zig gets the technical and financial support from the community.

kevinkkirimii
Автор

This video is a gem of an example of well-paced technical communication. Loris' care to clarify and explain up-front topics is appreciated.

JohnDeHope
Автор

Where has this channel been hiding ? Great content across the board, well presented. Subscribed.
I tuned in for the Zig content, and was thrilled to discover a whole new channel full of quality, in-depth content.

Kris seems like a great guy, with all the enthusiasm for programming that bought us here in the first place. Thx.

steveoc
Автор

I first learned about Zig when trying to use Rust for AWS Lambda functions. It worked exactly as described in this video - the Zig compiler cross-compiles the Rust code in order to target the specific version of libc used in AWS Lambda runtimes. I was kind of blown away by it to be honest. Rust on Lambda was my first contact with Zig. I really enjoyed learning about the details from Loris in this video.

hdsH
Автор

awestruck. this guy's ability to translate such complex ideas into info digestible to the avg programmer is unmatched.

KRTO
Автор

Wow, this has been incredibly illuminating. I have a Go project with C dependencies and I did not know I could use zig to cross compile it to a single executable binary! This is huge!

nomadtrails
Автор

Wonderful video by both participants. I didn't think I'd watch much of it because 83 minutes. Next thing I knew I was 70 minutes in and just stayed until the end.

I appreciated how the host gave so much space while intermittently prodding the discussion in interesting directions with well-prepared questions. I also liked how both participants spoke slowly enough with an attenuated tonal cadence for clear articulation and allowing the audience time to internalize what is being discussed without losing track of the flow of conversation. It was a calming experience that was easy to watch/listen to, which given the nature of the content, having such an easy-to-digest style is quite advantageous. There's already enough complexity in the content for us to parse that my attention was already quite occupied.

Blaisem
Автор

What a great host. Intelligent questions and Letting your guest talk? Sadly insanely rare

maxmustermann
Автор

As a programmer (not in low level systems), I can’t express how grateful I am for gifted people like Loris doing what they do for the world.

Dgg-xe
Автор

Very good video. I clicked on it on a whim and I'm happy that I did.

My current impression of Zig is that its a cool project that I can appreciate, but ultimately it doesn't feel like a competitor to Rust. Rust seems to have different goals and features that I love very much, and Zig doesn't seem to have some of them nor does it aspire to have them. Its on a different path, which is perfectly fine, but its not a path I want to be on personally. But im glad it exists, cus I might find myself using it one day.

TheHubra
Автор

I already know zig for over an year and love it and I still learned quite a bit from this discussion and thoroughly enjoyed it. Great stuff. Thank you!

rganesan
Автор

I already loved working with Zig, this talk makes me feel inspired and have even more respect for the team.

jasperdunn
Автор

Excellent presentation. Thank you to both host and guest (people that is).

nicholascrosbie
Автор

You are such a competent interviewer, thank you so much for all your podcasts !

ToukiMS
Автор

Love this interview. The interviewer is humble and and approaches every interaction with a charitable beginner mind. The interviewee is excited and precise in his explanations.

clickrush
Автор

Thank you for sharing with us this wonderful conversation, I had a great time listening to you both! Zig <3

EliasDorneles