{"action":"created","comment":{"url":"https://api.github.com/repos/tc39/ecma262/pulls/comments/43253200","id":43253200,"diff_hunk":"@@ -0,0 +1,100 @@\n+# Frequently Asked Questions\n+\n+An index of frequently asked questions regarding all things ECMA-262.\n+\n+# Process Questions\n+\n+##### What is the process for proposing a new feature?\n+\n+New features start life as a proposal to the [TC39](#what-is-a-tc39) committee and must be championed (or co-championed) by at least one member of the committee. Once the proposal is raised at a committee meeting, it will become a Stage 0 proposal and move along from there. For more details on how proposal stages work, check out the [proposal process document][proposal-process-document].\n+\n+If you would like to contribute, please check out [Contributing to ECMAScript](https://github.com/jeffmo/ecma262/blob/master/CONTRIBUTING.md).\n+\n+##### What is a \"TC39\"?\n+\n+TC39 stands for \"Technical Committee 39\" and is the committee responsible for iterating on and evolving the ECMAScript language specification. The committee generally meets around 6 times a year to discuss progress on pending proposals and collectively work on moving forward with changes to the spec.\n+\n+##### Why can't we remove feature X?\n+\n+Changes to ECMAScript must carefully consider the state of the world using the previous version of the language. This includes a large percentage of the web. As a result, in order to remove a feature from ECMAScript, TC39 must be able to show that the feature is used almost never (and thus can be removed). Going through this exercise is extremely difficult and sometimes impossible -- so in general ECMAScript *very* rarely removes features.\n+\n+# Feature Questions\n+\n+### Arrow Functions\n+\n+##### Why isn't there a `->` version of arrow functions?\n+\n+The motivation for `=>` was to address the oft-fired footgun of dynamic `this` bindings. Additionally, having two forms of arrows is confusing; So only one form was added.\n+\n+### Destructuring\n+\n+##### Why isn't the object property destructuring syntax flipped the other way?\n+\n+(i.e. `let {x: y} = {x: 42}` vs `let {y: x} = {x: 42}`)\n+\n+In all other object patterns in the language, the syntax to the left of the colon represents the \"structure\" of an object; So having destructuring patterns match this convention was most consistent.\n+\n+More fundamentally, however, flipping the syntax the other way would produce a grammar that requires infinite lookahead to properly disambiguate.","path":"FAQ.md","position":37,"original_position":37,"commit_id":"b57fe09b547dd6f9caf84b650c5079fa0ad8f630","original_commit_id":"b57fe09b547dd6f9caf84b650c5079fa0ad8f630","user":{"login":"rossberg","id":1675211,"avatar_url":"https://avatars.githubusercontent.com/u/1675211?v=3","gravatar_id":"","url":"https://api.github.com/users/rossberg","html_url":"https://github.com/rossberg","followers_url":"https://api.github.com/users/rossberg/followers","following_url":"https://api.github.com/users/rossberg/following{/other_user}","gists_url":"https://api.github.com/users/rossberg/gists{/gist_id}","starred_url":"https://api.github.com/users/rossberg/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/rossberg/subscriptions","organizations_url":"https://api.github.com/users/rossberg/orgs","repos_url":"https://api.github.com/users/rossberg/repos","events_url":"https://api.github.com/users/rossberg/events{/privacy}","received_events_url":"https://api.github.com/users/rossberg/received_events","type":"User","site_admin":false},"body":"Yea, I suppose. But I was a bit thrown off by the \"More fundamentally\" in the second paragraph, which never even was a relevant consideration in this case.","created_at":"2015-10-28T13:18:55Z","updated_at":"2015-10-28T13:18:55Z","html_url":"https://github.com/tc39/ecma262/pull/133#discussion_r43253200","pull_request_url":"https://api.github.com/repos/tc39/ecma262/pulls/133","_links":{"self":{"href":"https://api.github.com/repos/tc39/ecma262/pulls/comments/43253200"},"html":{"href":"https://github.com/tc39/ecma262/pull/133#discussion_r43253200"},"pull_request":{"href":"https://api.github.com/repos/tc39/ecma262/pulls/133"}}},"pull_request":{"url":"https://api.github.com/repos/tc39/ecma262/pulls/133","id":48917827,"html_url":"https://github.com/tc39/ecma262/pull/133","diff_url":"https://github.com/tc39/ecma262/pull/133.diff","patch_url":"https://github.com/tc39/ecma262/pull/133.patch","issue_url":"https://api.github.com/repos/tc39/ecma262/issues/133","number":133,"state":"closed","locked":false,"title":"Add an FAQ.md doc","user":{"login":"jeffmo","id":498293,"avatar_url":"https://avatars.githubusercontent.com/u/498293?v=3","gravatar_id":"","url":"https://api.github.com/users/jeffmo","html_url":"https://github.com/jeffmo","followers_url":"https://api.github.com/users/jeffmo/followers","following_url":"https://api.github.com/users/jeffmo/following{/other_user}","gists_url":"https://api.github.com/users/jeffmo/gists{/gist_id}","starred_url":"https://api.github.com/users/jeffmo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jeffmo/subscriptions","organizations_url":"https://api.github.com/users/jeffmo/orgs","repos_url":"https://api.github.com/users/jeffmo/repos","events_url":"https://api.github.com/users/jeffmo/events{/privacy}","received_events_url":"https://api.github.com/users/jeffmo/received_events","type":"User","site_admin":false},"body":"Various FAQ's pop up on esdiscuss and elsewhere from time to time, so I figured this would be a good defacto place to log and point anyone who has FAQs.","created_at":"2015-10-27T19:10:01Z","updated_at":"2015-10-28T13:18:55Z","closed_at":"2015-10-27T21:22:45Z","merged_at":"2015-10-27T21:22:45Z","merge_commit_sha":"270cf77f5a1993548acaf56df970e1dd48f63de6","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/tc39/ecma262/pulls/133/commits","review_comments_url":"https://api.github.com/repos/tc39/ecma262/pulls/133/comments","review_comment_url":"https://api.github.com/repos/tc39/ecma262/pulls/comments{/number}","comments_url":"https://api.github.com/repos/tc39/ecma262/issues/133/comments","statuses_url":"https://api.github.com/repos/tc39/ecma262/statuses/b57fe09b547dd6f9caf84b650c5079fa0ad8f630","head":{"label":"jeffmo:master","ref":"master","sha":"b57fe09b547dd6f9caf84b650c5079fa0ad8f630","user":{"login":"jeffmo","id":498293,"avatar_url":"https://avatars.githubusercontent.com/u/498293?v=3","gravatar_id":"","url":"https://api.github.com/users/jeffmo","html_url":"https://github.com/jeffmo","followers_url":"https://api.github.com/users/jeffmo/followers","following_url":"https://api.github.com/users/jeffmo/following{/other_user}","gists_url":"https://api.github.com/users/jeffmo/gists{/gist_id}","starred_url":"https://api.github.com/users/jeffmo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jeffmo/subscriptions","organizations_url":"https://api.github.com/users/jeffmo/orgs","repos_url":"https://api.github.com/users/jeffmo/repos","events_url":"https://api.github.com/users/jeffmo/events{/privacy}","received_events_url":"https://api.github.com/users/jeffmo/received_events","type":"User","site_admin":false},"repo":{"id":18612388,"name":"ecma262","full_name":"jeffmo/ecma262","owner":{"login":"jeffmo","id":498293,"avatar_url":"https://avatars.githubusercontent.com/u/498293?v=3","gravatar_id":"","url":"https://api.github.com/users/jeffmo","html_url":"https://github.com/jeffmo","followers_url":"https://api.github.com/users/jeffmo/followers","following_url":"https://api.github.com/users/jeffmo/following{/other_user}","gists_url":"https://api.github.com/users/jeffmo/gists{/gist_id}","starred_url":"https://api.github.com/users/jeffmo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jeffmo/subscriptions","organizations_url":"https://api.github.com/users/jeffmo/orgs","repos_url":"https://api.github.com/users/jeffmo/repos","events_url":"https://api.github.com/users/jeffmo/events{/privacy}","received_events_url":"https://api.github.com/users/jeffmo/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/jeffmo/ecma262","description":"Status, process, and documents for ECMA262","fork":true,"url":"https://api.github.com/repos/jeffmo/ecma262","forks_url":"https://api.github.com/repos/jeffmo/ecma262/forks","keys_url":"https://api.github.com/repos/jeffmo/ecma262/keys{/key_id}","collaborators_url":"https://api.github.com/repos/jeffmo/ecma262/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/jeffmo/ecma262/teams","hooks_url":"https://api.github.com/repos/jeffmo/ecma262/hooks","issue_events_url":"https://api.github.com/repos/jeffmo/ecma262/issues/events{/number}","events_url":"https://api.github.com/repos/jeffmo/ecma262/events","assignees_url":"https://api.github.com/repos/jeffmo/ecma262/assignees{/user}","branches_url":"https://api.github.com/repos/jeffmo/ecma262/branches{/branch}","tags_url":"https://api.github.com/repos/jeffmo/ecma262/tags","blobs_url":"https://api.github.com/repos/jeffmo/ecma262/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/jeffmo/ecma262/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/jeffmo/ecma262/git/refs{/sha}","trees_url":"https://api.github.com/repos/jeffmo/ecma262/git/trees{/sha}","statuses_url":"https://api.github.com/repos/jeffmo/ecma262/statuses/{sha}","languages_url":"https://api.github.com/repos/jeffmo/ecma262/languages","stargazers_url":"https://api.github.com/repos/jeffmo/ecma262/stargazers","contributors_url":"https://api.github.com/repos/jeffmo/ecma262/contributors","subscribers_url":"https://api.github.com/repos/jeffmo/ecma262/subscribers","subscription_url":"https://api.github.com/repos/jeffmo/ecma262/subscription","commits_url":"https://api.github.com/repos/jeffmo/ecma262/commits{/sha}","git_commits_url":"https://api.github.com/repos/jeffmo/ecma262/git/commits{/sha}","comments_url":"https://api.github.com/repos/jeffmo/ecma262/comments{/number}","issue_comment_url":"https://api.github.com/repos/jeffmo/ecma262/issues/comments{/number}","contents_url":"https://api.github.com/repos/jeffmo/ecma262/contents/{+path}","compare_url":"https://api.github.com/repos/jeffmo/ecma262/compare/{base}...{head}","merges_url":"https://api.github.com/repos/jeffmo/ecma262/merges","archive_url":"https://api.github.com/repos/jeffmo/ecma262/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/jeffmo/ecma262/downloads","issues_url":"https://api.github.com/repos/jeffmo/ecma262/issues{/number}","pulls_url":"https://api.github.com/repos/jeffmo/ecma262/pulls{/number}","milestones_url":"https://api.github.com/repos/jeffmo/ecma262/milestones{/number}","notifications_url":"https://api.github.com/repos/jeffmo/ecma262/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/jeffmo/ecma262/labels{/name}","releases_url":"https://api.github.com/repos/jeffmo/ecma262/releases{/id}","created_at":"2014-04-09T20:38:34Z","updated_at":"2015-10-16T15:09:57Z","pushed_at":"2015-10-27T20:25:13Z","git_url":"git://github.com/jeffmo/ecma262.git","ssh_url":"git@github.com:jeffmo/ecma262.git","clone_url":"https://github.com/jeffmo/ecma262.git","svn_url":"https://github.com/jeffmo/ecma262","homepage":"","size":1051,"stargazers_count":0,"watchers_count":0,"language":"HTML","has_issues":false,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"tc39:master","ref":"master","sha":"73dec9dc530d65a8c873a21bb4eb3f002c1b7155","user":{"login":"tc39","id":1725583,"avatar_url":"https://avatars.githubusercontent.com/u/1725583?v=3","gravatar_id":"","url":"https://api.github.com/users/tc39","html_url":"https://github.com/tc39","followers_url":"https://api.github.com/users/tc39/followers","following_url":"https://api.github.com/users/tc39/following{/other_user}","gists_url":"https://api.github.com/users/tc39/gists{/gist_id}","starred_url":"https://api.github.com/users/tc39/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/tc39/subscriptions","organizations_url":"https://api.github.com/users/tc39/orgs","repos_url":"https://api.github.com/users/tc39/repos","events_url":"https://api.github.com/users/tc39/events{/privacy}","received_events_url":"https://api.github.com/users/tc39/received_events","type":"Organization","site_admin":false},"repo":{"id":18609427,"name":"ecma262","full_name":"tc39/ecma262","owner":{"login":"tc39","id":1725583,"avatar_url":"https://avatars.githubusercontent.com/u/1725583?v=3","gravatar_id":"","url":"https://api.github.com/users/tc39","html_url":"https://github.com/tc39","followers_url":"https://api.github.com/users/tc39/followers","following_url":"https://api.github.com/users/tc39/following{/other_user}","gists_url":"https://api.github.com/users/tc39/gists{/gist_id}","starred_url":"https://api.github.com/users/tc39/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/tc39/subscriptions","organizations_url":"https://api.github.com/users/tc39/orgs","repos_url":"https://api.github.com/users/tc39/repos","events_url":"https://api.github.com/users/tc39/events{/privacy}","received_events_url":"https://api.github.com/users/tc39/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/tc39/ecma262","description":"Status, process, and documents for ECMA262","fork":false,"url":"https://api.github.com/repos/tc39/ecma262","forks_url":"https://api.github.com/repos/tc39/ecma262/forks","keys_url":"https://api.github.com/repos/tc39/ecma262/keys{/key_id}","collaborators_url":"https://api.github.com/repos/tc39/ecma262/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/tc39/ecma262/teams","hooks_url":"https://api.github.com/repos/tc39/ecma262/hooks","issue_events_url":"https://api.github.com/repos/tc39/ecma262/issues/events{/number}","events_url":"https://api.github.com/repos/tc39/ecma262/events","assignees_url":"https://api.github.com/repos/tc39/ecma262/assignees{/user}","branches_url":"https://api.github.com/repos/tc39/ecma262/branches{/branch}","tags_url":"https://api.github.com/repos/tc39/ecma262/tags","blobs_url":"https://api.github.com/repos/tc39/ecma262/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/tc39/ecma262/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/tc39/ecma262/git/refs{/sha}","trees_url":"https://api.github.com/repos/tc39/ecma262/git/trees{/sha}","statuses_url":"https://api.github.com/repos/tc39/ecma262/statuses/{sha}","languages_url":"https://api.github.com/repos/tc39/ecma262/languages","stargazers_url":"https://api.github.com/repos/tc39/ecma262/stargazers","contributors_url":"https://api.github.com/repos/tc39/ecma262/contributors","subscribers_url":"https://api.github.com/repos/tc39/ecma262/subscribers","subscription_url":"https://api.github.com/repos/tc39/ecma262/subscription","commits_url":"https://api.github.com/repos/tc39/ecma262/commits{/sha}","git_commits_url":"https://api.github.com/repos/tc39/ecma262/git/commits{/sha}","comments_url":"https://api.github.com/repos/tc39/ecma262/comments{/number}","issue_comment_url":"https://api.github.com/repos/tc39/ecma262/issues/comments{/number}","contents_url":"https://api.github.com/repos/tc39/ecma262/contents/{+path}","compare_url":"https://api.github.com/repos/tc39/ecma262/compare/{base}...{head}","merges_url":"https://api.github.com/repos/tc39/ecma262/merges","archive_url":"https://api.github.com/repos/tc39/ecma262/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/tc39/ecma262/downloads","issues_url":"https://api.github.com/repos/tc39/ecma262/issues{/number}","pulls_url":"https://api.github.com/repos/tc39/ecma262/pulls{/number}","milestones_url":"https://api.github.com/repos/tc39/ecma262/milestones{/number}","notifications_url":"https://api.github.com/repos/tc39/ecma262/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/tc39/ecma262/labels{/name}","releases_url":"https://api.github.com/repos/tc39/ecma262/releases{/id}","created_at":"2014-04-09T19:04:33Z","updated_at":"2015-10-28T12:20:18Z","pushed_at":"2015-10-27T22:37:38Z","git_url":"git://github.com/tc39/ecma262.git","ssh_url":"git@github.com:tc39/ecma262.git","clone_url":"https://github.com/tc39/ecma262.git","svn_url":"https://github.com/tc39/ecma262","homepage":"https://tc39.github.io/ecma262","size":12557,"stargazers_count":1380,"watchers_count":1380,"language":"HTML","has_issues":true,"has_downloads":true,"has_wiki":true,"has_pages":true,"forks_count":72,"mirror_url":null,"open_issues_count":9,"forks":72,"open_issues":9,"watchers":1380,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/tc39/ecma262/pulls/133"},"html":{"href":"https://github.com/tc39/ecma262/pull/133"},"issue":{"href":"https://api.github.com/repos/tc39/ecma262/issues/133"},"comments":{"href":"https://api.github.com/repos/tc39/ecma262/issues/133/comments"},"review_comments":{"href":"https://api.github.com/repos/tc39/ecma262/pulls/133/comments"},"review_comment":{"href":"https://api.github.com/repos/tc39/ecma262/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/tc39/ecma262/pulls/133/commits"},"statuses":{"href":"https://api.github.com/repos/tc39/ecma262/statuses/b57fe09b547dd6f9caf84b650c5079fa0ad8f630"}}}}