# Where to start reading the Zig (compiler) source code?

**URL:** <https://ziggit.dev/t/where-to-start-reading-the-zig-compiler-source-code/4852>\
**Category:** Brainstorming\
**Tags:** compiler\
**Created:** [June 24, 2024, 11:03am UTC](https://ziggit.dev/t/where-to-start-reading-the-zig-compiler-source-code/4852 "2024-06-24T11:03:22Z")\
**Posts on this page:** 1\
**Showing post:** 2

<div class="post-metadata">

**Author:** ![dimdin](https://ziggit.dev/user_avatar/ziggit.dev/dimdin/32/1457_2.png) [@dimdin](https://ziggit.dev/u/dimdin)\
**Post date:** [June 24, 2024, 2:07pm UTC](https://ziggit.dev/t/where-to-start-reading-the-zig-compiler-source-code/4852/2 "2024-06-24T14:07:58Z")

</div>

An introduction to the internals of the Zig compiler frontent is [Mitchell Hashimoto Zig Compiler Internals](https://mitchellh.com/zig)

See also the responses to explain category questions for compiler internals like:

> [@How Zig incremental compilation is implemented internally?](https://ziggit.dev/t/how-zig-incremental-compilation-is-implemented-internally/3543/2):
>
> Nice question! I can give an overview here – I’m also intending to do a proper write-up of the system at some point into a docs file in the Zig repo, although that’ll probably assume a bit more technical background (since it’ll be targeted towards existing compiler devs). First, we need to understand the compiler pipeline. After parsing (which is boring), there are three important stages: AstGen Sema CodeGen AstGen consumes a parsed AST and generates an instruction-based intermediate represe…

---

_[View the full topic](https://ziggit.dev/t/where-to-start-reading-the-zig-compiler-source-code/4852)._
