The Nanopass Framework is an embedded domain-specific language for creating compilers that focuses on creating small passes and many intermediate representations. Nanopass reduces the boilerplate required to create compilers making them easier to understand and maintain.