Skip to content


Folders and files

Last commit message
Last commit date

Latest commit



59 Commits

Repository files navigation

ppx_core - a PPX standard library

Ppx_core is a standard library for OCaml AST transformers. It contains:

  • various auto-generated AST traversal using an open recursion scheme
  • helpers for building AST fragments
  • helpers for matching AST fragments
  • a framework for dealing with attributes and extension points

When used in combination with ppx_driver, it features:

  • spellchecking and other hints on misspelled/misplaced attributes and extension points
  • checks for unused attributes (they are otherwise silently dropped by the compiler)

Ast version

Ppx_core uses the specific version of the OCaml Abstract Syntax Tree as defined by Ppx_ast.


If you want to write code that works with several versions of Ppx_core using different AST versions, you can use the versionned alternatives for Ast_builder and Ast_pattern. For instance:

open Ppx_core
module Ast_builder = Ast_builder_403
module Ast_pattern = Ast_pattern_403