// the take
A Python line-by-line port of LLVM's official Kaleidoscope tutorial, using llvmlite instead of the C++ APIs the tutorial actually teaches. It's for someone working through that tutorial who wants to write the toy compiler in Python rather than C++, not for someone looking for a reusable compiler-construction library.
Each file maps to a tutorial chapter, so you can follow along step by step without translating C++ in your head. It ships actual unit tests per chapter, which most tutorial-companion repos skip entirely. Setup got meaningfully better in the 2025 update - llvmlite now has binary wheels, so `uv run chapter6.py` just works instead of the old manual LLVM build/link dance this repo used to require.
Chapter 9 (debug info) is missing because llvmlite doesn't expose the emission APIs for it, so 'fairly complete' means complete except for the part people often care about most. The code itself is a 2015-era procedural translation - no type hints, no attempt at idiomatic modern Python, it just mirrors the C++ structure. It's not a library you build on top of; once you've read through the chapters there's nothing left to use it for. And it's a single-maintainer tutorial companion - updates are sporadic and tied to llvmlite/Python compatibility, not active development.
We read the README, the directory tree and a key source file in October 2026. Nobody pays to be listed. How we judge →