Nanopass Compiler
Through a friend, I got hold of a provocative paper A Nanopass Framework for Compiler Education, by Sarkar, Waddell, and Dybvig. They describe a compiler written in scheme that makes 50ish passes. Each pass is described as a language transform,…
Express yourself: to the compiler and to your fellow developer.
The keynote speaker at CGO 2012 (Chris Lattner, LLVM) put some crazy thoughts into my head. Want compiler to know about: memory disjointness aliasing Usage of data structures (array of struct vs struct of arrays) whether arithmetic is done on…

The Good IR: Multiple Returns
This post is part of a seres: The Good IR (BasicBlocks and control flow instructions) The Good IR: Other Control Flow Structures The Good IR: Instructions and Values The Good IR: Reporting Semantic Errors via Type Checking The Good IR:…
The Good IR: Reporting Semantic Errors via Type Checking
This post is part of a seres: The Good IR (BasicBlocks and control flow instructions) The Good IR: Other Control Flow Structures The Good IR: Instructions and Values The Good IR: Reporting Semantic Errors via Type Checking The Good IR:…

The Good IR: Instructions and Values
This post is part of a seres: The Good IR (BasicBlocks and control flow instructions) The Good IR: Other Control Flow Structures The Good IR: Instructions and Values The Good IR: Reporting Semantic Errors via Type Checking The Good IR:…

The Good IR: Other Control Flow Structures
This post is part of a seres: The Good IR (BasicBlocks and control flow instructions) The Good IR: Other Control Flow Structures The Good IR: Instructions and Values The Good IR: Reporting Semantic Errors via Type Checking The Good IR:…

The Good IR
This post is part of a seres: The Good IR (BasicBlocks and control flow instructions) The Good IR: Other Control Flow Structures The Good IR: Instructions and Values The Good IR: Reporting Semantic Errors via Type Checking The Good IR:…