Im my experience OCaml has the best modularity abstractions out there. OCaml modules are unique since they allow you to work with blocks of code (and types) on a higher level.<p>Composing and extending modules, passing modules as parameters to other modules and this way adapting the code to your need.<p>And the nice thing is that all the modules are evaluated at compile-time. Which means you don&#x27;t have to sacrifice performance for modularity and still get a very flexible framework for Metaprogramming[1].<p>[1]: <a href="https:&#x2F;&#x2F;ocaml.org&#x2F;learn&#x2F;tutorials&#x2F;modules.html#Functors" rel="nofollow">https:&#x2F;&#x2F;ocaml.org&#x2F;learn&#x2F;tutorials&#x2F;modules.html#Functors</a>