Skip to content
0:00 / 0:00

#zig#comptime#cabi

The Road to Zig 1.0 - Andrew Kelley

ChariotSolutions

9.3K subscribers • 10 videos on Hallway

YouTube
  • Recommended by 6 people: 5 on Hacker News and 1 in engineering communities.
  • A classic. People kept recommending it from 2019 to 2024.
  • Presented by Andrew Kelley, creator of Zig

Intermediate. Assumes working knowledge.

167K views7 years ago6 recommendations

Programming languagesSystems programmingZigLanguage design and type systemsCompilers and interpreters

Andrew Kelley introduces the Zig programming language, explaining its design goals, C interoperability, and compile-time code execution.

Despite being one of the youngest programming languages, Zig is progressing rapidly toward its first production-ready release. Join creator Andrew Kelley for a justification of Zig’s existence and a tour of the unique features of Zig. See what people have already built with it today, and explore what will be possible when Zig reaches 1.0. Bring your skepticism, tough questions, and unusual use cases. Philly ETE 2019 Playlist: youtube.com/playlist?list=PL9oQ7yETvN10Lopbg81O_bwElm9grUkDB On the Chariot Solutions site: chariotsolutions.com/screencasts/

Why it's here

6 people recommend this

What people say. Recommended as an excellent introduction to Zig's design philosophy, its build system, and how it addresses the problems of C.

Moments people linked to

u/vegecodein r/Zig • Recommends

Andrew's latest talk at Emerging Technologies for the Enterprise Conference

pixelpoeton Hacker News • Recommends

On “Problems of C, and how Zig addresses them”

Andrew Kelley's intro0 is probably the best talk I've ever seen, and his continuing leadership seems really great to me and worth supporting. Besides my reservations for its use in graphics programming (see my other comment) it looks very attractive in many practical ways (build system!! fuck CMake!) I could go from how I currently write my hobby code, sometimes a prototype for future commercial code. 0 link to this video

matheusmoreiraon Hacker News • Recommends

On “A decade of developing a programming language”

I can only hope my own language will become "incredibly small" like that one day. :) Even if a language doesn't take off, its ideas can make a difference and influence future designs. The creator of Zig certainly made an impression on me with this talk: link to this video Even if Zig hadn't been successful, the ideas it represents would've enriched the world. Gives me hope I'll be able to make something out of my own ideas too one day.

pixelpoeton Hacker News • Recommends

On “C++ is an absolute blast”

…+ feature, but in these cases, it isn't a C++ feature, it's language-level basic algebra. In C++ land, ISPC1 is often what you use when you want top speed rendering perf on SIMD CPUs, e.g. Moonray project2 Please, just go ahead and define a nice clean API for vectors and scalars like OpenCL provides on its beautiful reference cards: link 0 link to this video 1 link 2 link Final edit sorry: in the end I love C++ and have been learning Rust mainly out of curiosity. Avoiding C++ quirks one can have few problems and a great time.…

AndyKelleyon Hacker News • Recommends

On “Game Boy Advance “Hello World” Using Zig”

Here is a newer talk (April 2019) which is also by me and also an introduction to Zig: link to this video A lot has changed since then, and a lot has changed since that Localhost talk. To catch up: * (the older talk happened here) * 0.3.0 release notes - link * 0.4.0 release notes - link * (the newer talk happened here) * 0.5.0 release notes - link

von_lohengrammon Hacker News • Recommends

On “Zig 0.9.0”

In addition to the other recommendations, the Zig Zen0 and The Road to Zig 1.01 are pretty convincing. 0 link 1 link to this video

fileeditviewon Hacker News • Recommends

On “Zig Build System”

I would recommend this talk by the creator of Zig: link to this video He gives some examples of C vs Zig and what they tried to improve.

u/fluffynukeitin r/C_Programming • Mentions

On “What do people think of the C replacements, are anyone getting close?”

The c ecosystem is entirely compatible with zig. You can import c header files and use them right away in zig code. You can even compile c code directly with the zig compiler. This was intentional in its design precisely because there is so much c code out there that is rock solid and battle tested. So for my two cents, I think zig has the best chance. When I’m off mobile I’ll link my favorite zig presentation. The creator, Andrew Kelley, goes through a handful of small annoyances he had as a c programmer, how he fixed those small things, and how the fixes opened up all new possibilities in other ways. Edit: here is the presentation: link to this video

u/marler8997in r/Zig • Mentions

On “Feedback from a new user of Zig”

…ing... To my understanding this isn't the case, your code example should compile fine. I can create variables with "var" without mutating them and it compiles just fine. Maybe I'm missing something? \> Overall, I feel that Zig is fixing what wasn't broken in C ... This is a great video that goes over exactly what Andrew is trying to fix in C: [video However keep in mind that Zig tries to improve any way it can, even if it means diverging from it's original inspiration. Designing languages is extremely complex and difficult, so be aware that if something doesn't make sense, there might be good reasons for it that you're just not aware of yet.…

u/funkiestjin r/Zig • Mentions

On “What is the Zig philosophy on APIs and abstraction?”

You might want to watch The Road to Zig 1.0 in wich Saint Kelley tells us (paraphrase) "Zig is just C with the glaring problems fixed". You

u/BounceVectorin r/Zig • Mentions

On “What are the advantages of Zig over C?”

There's a presentation from Andrew about the problems of C and how Zig tries to fix them: [video Road to Zig 1.0 I consider it required viewing ;)

u/CraigMcDonaldCodesin r/Zig • Mentions

On “When to use comptime in Zig? (Beginner question)”

It was about Rust; I knew I had seen it recently so had to dig it out as it was annoying me. link to this video
3View on Reddit

u/cassepipein r/Zig • Mentions

On “What if Zig had a dual "typing" system?”

I think you need to try and learn C (which will be useful in you continue to be low-level) to fully appreciate what zig is bringing to the table. Actually one of the first talks of Andrew really brought the point home that the purpose was to be a better C, C without all the warts, not the kitchensink approaches of C++ and Rust. link to this video link to this video

matheusmoreiraon Hacker News • Mentions

On “JavaScript Is C”

…ect, obtain a pointer to a C++ object and call methods on it using the C++ ABI and handle the C++ exceptions it may throw. The only way to interoperate is to sacrifice all the benefits of C++ and adopt a C interface. Rust has this feature as well. I like how the creator of Zig put it: if it doesn't speak the C ABI, someone's gonna rewrite it in C. link to this video…

AndyKelleyon Hacker News • Mentions

On “Hobby x86 kernel written with Zig”

Here is a talk I gave that directly addresses this question: link to this video (the title & abstract in the youtube description is the one I gave for the RFP; I ended up going in a slightly different direction than it once I actually made the talk)

matheusmoreiraon Hacker News • Mentions

On “Announcing The Zig Software Foundation”

Operator overloading leads to a complex binary interface. Avoiding complexity in this area is important given that simple binary interface is a huge reason why reusable software is still written in C. link to this video