Modular macros

The Modular Macros project brings new language features for typed, hygienic, compile-time computation to OCaml. Modular macros make it possible for programmers to write high-level libraries that generate efficient low-level code.

Our design builds on a long tradition of work in multi-stage programming, taking inspiration from languages such as MetaML, MetaOCaml and Typed Template Haskell, and integrating smoothly with existing OCaml features, such as its advanced module system. We’ll port existing multi-staged libraries (e.g. for stream processing, parsing and generic programming) and develop new applications that combine high-level abstractions with outstanding performance.

Papers & extended abstracts

Implementations

People

Industrial support & funding