Jonathan S. Shapiro wrote:
On Fri, 2005-06-10 at 10:22 -0400, Swaroop Sridhar wrote:
ex:
(import l1 list)
(import l2 list)
This will create
l1::alst : l1::t and
l2::alst : l2::t
One possibility is to make l1::t an l2::t compatible. Other possibility
is to keep them different, and now, the situation is very interesting
because I have one value alst with 2 alias names and 2 incompatible but
equally powerful types.
I think one possibility is that the rule should be:
They are the same type if exported transparently (this will allow them
to unify as intended), and different if exported opaquely.
Definitely not. Only one type has been exported. What happened here is
that the *import* created an alias. They are the same type.
You are probably right. But this will create a situation in which a
diamond import is different from directly importing a module twice.
Swaroop.
_______________________________________________
bitc-dev mailing list
[email protected]
http://www.coyotos.org/mailman/listinfo/bitc-dev