[ANN] override 0.1.0 (initial release)

Dear OCaml developers,

I am happy to announce the first release of override (v0.1.0)!

Override is a PPX extension for overriding modules defined in other compiled interface files.

The library is available through opam: opam install override

The project is hosted on Inria Gitlab:

See README.md for usage and examples.

This library generalizes ppx_import by allowing a whole module to be imported with all its types, possibly with annotations. In particular, importing a whole module can be convenient to apply
ppx_deriving to a large family of mutually inductive data types. Types can be systematically annotated, substituted, renamed, or removed. The library can be seen as a mechanization of @gasche’s post on Gagallium blog:
http://gallium.inria.fr/blog/overriding-submodules/

Happy hacking.

6 Likes

Wow, seems quite useful (in fact exactly what I was searching for).

1 Like

Thank you! The library is still at early stage of development. Comments and feedbacks are welcome to improve it!

By the way, I just added a new example for answering @bramford’s question about Typedtree traversal: the fact that this example is still quite laborious suggests that the library should be improved in some ways, even if I should admit it is not clear for me right now how this example could be better written.