# wa-lang/ugo-compiler-book

:books: µGo语言实现(从头开发一个迷你Go语言编译器)

Repository: https://github.com/wa-lang/ugo-compiler-book
Canonical: https://ross.abutalabs.com/products/ugo-compiler-book
Homepage: https://wa-lang.github.io/ugo-compiler-book
Language: Go
License Family: other
Topics: wasm, webassembly, wa, wa-lang
Last push: 2024-09-26T00:49:56+00:00

## Health v2 (maintenance only)
Score: 32/100 (v2, computed 2026-09-03T02:20:16.233290+00:00)
- activity 0, release rhythm 35, longevity 100
- inputs: {"age_days": 1764, "days_push": 707, "days_rel": null, "gap_med": null, "n_releases_24m": 0}
- flags: no_releases, no_license
- formula: round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)

## Adoption (not part of the score)
Stars 1536, forks 123 (observed 2026-08-28T04:05:00.000116+00:00)

## What it is
A free online book (in Chinese) that teaches how to build a mini Go-like language compiler called µGo from scratch, with example code in Go. It outputs LLVM assembly and serves as a warm-up project for the Wa (凹语言) WebAssembly language.

## Use cases
- learn how compilers work by building one
- understand how Go is compiled internally
- build a toy programming language from scratch
- study lexer, parser, and code generation with a real example
- prepare for contributing to a WebAssembly-targeting language
- find a hands-on compiler construction tutorial

## When to choose
- you want a step-by-step guide to implementing a compiler in Go
- you learn best by building a small real language end to end
- you are interested in Go-like syntax and LLVM or WASM backends

## When to avoid
- you need a production-ready compiler or toolchain
- you cannot read Chinese and no translation is available
- you want formal compiler theory rather than a practical walkthrough

## Facets
- artifact type: learning-resource
- maturity: active
- function: compiler, interpreter, programming-language, documentation
- domain: compilers, programming-languages, education, tutorials
- platform: go, cross-platform, wasm
- tags: compiler-book, toy-language, llvm, go-subset, chinese-language, self-hosting

## Member repositories
- wa-lang/ugo-compiler-book (main) score 32

## Provenance
- Observed fields: from GitHub, fetched 2026-08-28T04:05:00.000116+00:00.
- Health v2: computed from the inputs above; adoption is never an input.
- Inferred fields (summary, facets, guidance): AI-extracted, prompt v1, taxonomy v1, on 2026-08-30T04:31:06.855073+00:00, confidence not recorded.
  - readme: https://github.com/wa-lang/ugo-compiler-book (fetched 2026-08-28T04:05:00.000116+00:00, sha eda2c8244dac)
  - homepage: https://wa-lang.github.io/ugo-compiler-book (fetched 2026-08-29T11:32:53.472322+00:00, sha ee9a9b09f744)
- Data as of 2026-08-30T08:39:29.467469+00:00.
