Lexi Compiler

A multi-language and multi-target modular research compiler designed for easy modification with first-class plugin support.

View project on GitHub

Lexi Architecture

  1. Parser
    1. Top-down parsing
    2. Bottom-up parsing
  2. Type Analysis
    1. Inference
    2. Resolution
    3. Validation
  3. Intermediate Representation
    1. IR structure (TASTy)
    2. Serializing IR to binary TASTy files.
    3. Deserializing TASTy binary files to IR.
  4. Code Generation
    1. Targeting JVM
    2. Emitting native binaries via LLVM