On Mar 23, 2012, at 5:05 PM, Irakli Gozalishvili wrote:
> I'v being trying to figure out how ES.next module path resolution would work.
> Unfortunately proposal is not very clear about it:
> http://wiki.ecmascript.org/doku.php?id=harmony:modules
There's more info about the resolution semantics on the loaders page:
http://wiki.ecmascript.org/doku.php?id=harmony:module_loaders
Basically loaders make it possible for programmers to create custom resolution
policies.
But your question is probably more about what the default policy of the System
loader will be on the web. First of all, the System loader's baseURL (should it
be baseURI? I never understood the difference) would come from the document's
URL. So relative would definitely be relative the HTML file.
> Here are some of the questions I have:
>
> 1. Will html [base element] have a same effect on modules as it has on script
> tags today ?
> 2. Are relative paths resolved to a requirer's url, owner html document's
> urlor baseURI ?
>
> If my assumptions are correct this little example is correct:
> https://github.com/Gozala/packageless/tree/master/examples/es.next/
>
> [base element]:https://developer.mozilla.org/en/HTML/Element/base
These are really good points I hadn't thought about. Thanks for bringing it up!
I like the idea that
./foo.js
forces the loading to be relative to the document, whereas
bar/baz.js
is interpreted as relative to the <base> path. I don't have strong feelings
myself about what the System loader's policy should be on the web, but I want
to make sure our infrastructure is flexible enough to support a) whatever
everyone decides is the best policy for the browser, and b) policies like the
Node.js / NPM policy. I will have to read up a little more on document.baseURI
and <base> and all that.
Thanks for the information and ideas!
Dave
_______________________________________________
es-discuss mailing list
[email protected]
https://mail.mozilla.org/listinfo/es-discuss