Flybytes is a high-level abstract intermediate programming language that compiles quickly to JVM bytecode. It is very useful as an intermediate representation in a compiler for new programming languages and domain-specific languages; especially its origin tracking features that provide debugging support out-of-the-box are nice.