{"action":"created","issue":{"url":"https://api.github.com/repos/whatwg/loader/issues/54","labels_url":"https://api.github.com/repos/whatwg/loader/issues/54/labels{/name}","comments_url":"https://api.github.com/repos/whatwg/loader/issues/54/comments","events_url":"https://api.github.com/repos/whatwg/loader/issues/54/events","html_url":"https://github.com/whatwg/loader/issues/54","id":94204588,"number":54,"title":"Node core dev thinks loader will not work for Node","user":{"login":"domenic","id":617481,"avatar_url":"https://avatars.githubusercontent.com/u/617481?v=3","gravatar_id":"","url":"https://api.github.com/users/domenic","html_url":"https://github.com/domenic","followers_url":"https://api.github.com/users/domenic/followers","following_url":"https://api.github.com/users/domenic/following{/other_user}","gists_url":"https://api.github.com/users/domenic/gists{/gist_id}","starred_url":"https://api.github.com/users/domenic/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/domenic/subscriptions","organizations_url":"https://api.github.com/users/domenic/orgs","repos_url":"https://api.github.com/users/domenic/repos","events_url":"https://api.github.com/users/domenic/events{/privacy}","received_events_url":"https://api.github.com/users/domenic/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":46,"created_at":"2015-07-10T03:31:21Z","updated_at":"2015-07-23T19:22:51Z","closed_at":null,"body":"See https://github.com/WebAssembly/design/issues/256 where @trevnorris outlines his issues. I think it would be useful to discuss them in this repo. I am pretty sure they are not quite accurate (for example you can definitely do conditional loading at runtime, by customizing the loader), so it would be good to address such misconceptions and to make sure all use cases are covered."},"comment":{"url":"https://api.github.com/repos/whatwg/loader/issues/comments/124217084","html_url":"https://github.com/whatwg/loader/issues/54#issuecomment-124217084","issue_url":"https://api.github.com/repos/whatwg/loader/issues/54","id":124217084,"user":{"login":"dherman","id":307871,"avatar_url":"https://avatars.githubusercontent.com/u/307871?v=3","gravatar_id":"","url":"https://api.github.com/users/dherman","html_url":"https://github.com/dherman","followers_url":"https://api.github.com/users/dherman/followers","following_url":"https://api.github.com/users/dherman/following{/other_user}","gists_url":"https://api.github.com/users/dherman/gists{/gist_id}","starred_url":"https://api.github.com/users/dherman/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/dherman/subscriptions","organizations_url":"https://api.github.com/users/dherman/orgs","repos_url":"https://api.github.com/users/dherman/repos","events_url":"https://api.github.com/users/dherman/events{/privacy}","received_events_url":"https://api.github.com/users/dherman/received_events","type":"User","site_admin":false},"created_at":"2015-07-23T19:22:51Z","updated_at":"2015-07-23T19:22:51Z","body":"Here's what we came to on the call:\r\n\r\nThe main areas where Node/Browser module portability is valuable are:\r\n- the `import` method to dynamically asynchronously load modules\r\n- module object introspection\r\n- module registry introspection\r\n- evaluation order of top level module code\r\n\r\nThe intercession API is less important to be portable:\r\n- it's meant for customizing the host environment\r\n- the principal use case of the hooks is really EWM\r\n- it's non-trivial to come up with a blocking semantics that would allow writing portable async hooks\r\n- two separate API's or a shared maybe-sync/maybe-async callback layer would not allow portable code\r\n\r\nI'll reach out to a few stakeholders to help work out a good path for Node to implement ES6 module support without needing to support the async pipeline. And we'll want to refactor the registry introspection API to avoid the coupling to the promise pipeline, so that Node can support a compatible API for that."}}