Simply put, let us say I have an implementation file called moduleExample.ml
and an interface file in the same directory called moduleExample.mli
.
How could I load them together in such a way that the functions not listed in the interface moduleExample.mli
are hidden from moduleExample.ml
's signature in utop
? Additionally, how about type abstraction through the moduleExample.mli
file?