[ocaml-platform] Changes to my previous proposal for namespaces

Leo White lpw25 at cam.ac.uk
Tue Mar 19 13:42:45 GMT 2013


>> Currently, shadowing a compilation unit "foo.cmi" involves creating
>> another unit called "foo.cmi". Since these have the same name they can't
>> be linked within the same program, which limits the usefulness of this
>> kind of shadowing. With search path files this is no longer the case.
>
> I thought your proposal still required unit names to be globally unique. Do you propose a way to change the internal
> name independently of the filename ?

I think my paragraph was slightly misleading, I don't propose a way to
change the internal name independently of the compiled filename. But
even without that a search path file such as:

Foo#Bar: fb_100.cmi

means that the name "Foo#Bar" is not connected to the internal name
(which in this case would be "Fb_100"). This means that Foo#Bar can be
shadowed without causing potential linking conflicts.

As a side note, I do propose a way to change the internal name
independently of the *source* filename (the "-name" argument) but that
isn't relevant to this discussion.


More information about the Platform mailing list