はじめに 本記事は、 DeNA Advent Calendar 2020 の11日目の記事です。 突然ですが、﹁コンパイラのコードを読んでみよう﹂なんて言われても、﹁どうせ巨大で難解で複雑なロジックを理解しないと読めないんでしょ?﹂と思いませんか。 コンパイラの構造を理解しようとしても聞いたことのないような専門用語がずらりと並び、コードを読もうとしたらそれらをすべて完全に理解してないと一行も理解できないんじゃないか...。Go のコンパイラgcのソースコードを読むまでは、私もそう思っていました。 しかし、あまりにも暇な休日のある日、思い立ってgcのコードを読んでみました。すると、﹁コンパイル﹂という難解な響きの処理も、一つひとつを小さなタスクに分解することで、少しずつ読み進めることができると分かったのです! 何よりも感動したことは、gcそのものが全て Goで書かれていて、
![Go コンパイラのコードを読んでみよう - kosui](https://cdn-ak-scissors.b.st-hatena.com/image/square/18b480d3b85124bad408e267b5e593c21a89a29e/height=288;version=1;width=512/https%3A%2F%2Fcdn-ak.f.st-hatena.com%2Fimages%2Ffotolife%2Fk%2Fkosui_me%2F20231224%2F20231224154057.png)