← All repos

ppx_let

Monadic let-bindings

Browse cluster: OCaml incremental computation and PPX tooling
121commits
10contributors
3languages

Tech stack & purpose

ppx_let is a syntax extension (ppx rewriter) for OCaml that makes monadic and applicative code more readable by allowing developers to write custom binders using familiar let-binding syntax. The project adds new syntactic forms like `let%bind` and `let%map` that expand into calls to `bind` and `map` functions, along with support for match expressions, if expressions, function expressions, and while loops. The extension also supports parallel bindings via the `and` keyword, optimized multi-argument map functions, and advanced features like local-aware and zero-alloc variants for performance-conscious code. ppx_let is built for and used with Jane Street's Core suite of libraries, which provide the required `Let_syntax` modules containing the necessary `bind`, `map`, and `both` functions.

Languages

OCaml
99.7%
Makefile
0.2%
Dune
0.0%

Contributors