
"Simon Marlow"
Now, there are two separate issues here.
1) Relative imports. I don't see any problem with this at all, beyond choosing a syntax.
Although I'm not keen on relative imports because of the potential ambiguity they introduce, I agree that it might be possible to develop a non-ambiguous syntax.
2) Not specifying the full module name in the module source.
Several people have asked for (2), but the reason we have held off so far is because it makes a fundamental change to the language, namely that
The meaning of a module would not be completely specified by its source code.
On this one, I am absolutely in agreement that we should not lose this property of the source code completely specifying the module. At the moment, if you rename A.hs as B.hs, then of course you expect to the change the module header from 'module A' to 'module B'. I don't see why this should be any different when the module name is hierarchical. Regards, Malcolm