This repository is a Haskell port of the classic LLVM “Kaleidoscope” tutorial that walks you through building a tiny programming language from scratch. It covers the complete pipeline: tokenizing and parsing a simple, expression-oriented language, constructing an AST, and generating LLVM IR with a JIT so you can execute code interactively. Along the way it adds language features like user-defined functions, conditionals, loops, and operator precedence, demonstrating how each addition impacts parsing and codegen. Because it uses Haskell idioms, the code clearly separates pure syntax handling from effectful JIT operations, making the architecture easy to reason about. The examples double as a hands-on introduction to LLVM’s APIs without drowning you in infrastructure. As a result, the project is both a compact compiler course and a practical template for experimenting with language design in Haskell.