Extension points and AST rewriters are the OCaml answer to metaprogramming. You'll feel at ease diving right in to developing rewriters using OCaml PreProcessor eXtensions (PPX). Get your feet wet by writing a simple extension that replaces a string with its uppercase version. Then dive deeper by building an expander. Finally, explore some existing extension points and popular libraries that showcase the flexibility and power of PPX.