{"action":"created","issue":{"url":"https://api.github.com/repos/tc39/ecma262/issues/1796","repository_url":"https://api.github.com/repos/tc39/ecma262","labels_url":"https://api.github.com/repos/tc39/ecma262/issues/1796/labels{/name}","comments_url":"https://api.github.com/repos/tc39/ecma262/issues/1796/comments","events_url":"https://api.github.com/repos/tc39/ecma262/issues/1796/events","html_url":"https://github.com/tc39/ecma262/issues/1796","id":529632019,"node_id":"MDU6SXNzdWU1Mjk2MzIwMTk=","number":1796,"title":"Sorting out completion records","user":{"login":"bakkot","id":1653598,"node_id":"MDQ6VXNlcjE2NTM1OTg=","avatar_url":"https://avatars2.githubusercontent.com/u/1653598?v=4","gravatar_id":"","url":"https://api.github.com/users/bakkot","html_url":"https://github.com/bakkot","followers_url":"https://api.github.com/users/bakkot/followers","following_url":"https://api.github.com/users/bakkot/following{/other_user}","gists_url":"https://api.github.com/users/bakkot/gists{/gist_id}","starred_url":"https://api.github.com/users/bakkot/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bakkot/subscriptions","organizations_url":"https://api.github.com/users/bakkot/orgs","repos_url":"https://api.github.com/users/bakkot/repos","events_url":"https://api.github.com/users/bakkot/events{/privacy}","received_events_url":"https://api.github.com/users/bakkot/received_events","type":"User","site_admin":false},"labels":[{"id":874637395,"node_id":"MDU6TGFiZWw4NzQ2MzczOTU=","url":"https://api.github.com/repos/tc39/ecma262/labels/completion%20records","name":"completion records","color":"f7c98c","default":false,"description":"Relates to completion records, and ? / ! notation."}],"state":"open","locked":false,"assignee":{"login":"bakkot","id":1653598,"node_id":"MDQ6VXNlcjE2NTM1OTg=","avatar_url":"https://avatars2.githubusercontent.com/u/1653598?v=4","gravatar_id":"","url":"https://api.github.com/users/bakkot","html_url":"https://github.com/bakkot","followers_url":"https://api.github.com/users/bakkot/followers","following_url":"https://api.github.com/users/bakkot/following{/other_user}","gists_url":"https://api.github.com/users/bakkot/gists{/gist_id}","starred_url":"https://api.github.com/users/bakkot/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bakkot/subscriptions","organizations_url":"https://api.github.com/users/bakkot/orgs","repos_url":"https://api.github.com/users/bakkot/repos","events_url":"https://api.github.com/users/bakkot/events{/privacy}","received_events_url":"https://api.github.com/users/bakkot/received_events","type":"User","site_admin":false},"assignees":[{"login":"bakkot","id":1653598,"node_id":"MDQ6VXNlcjE2NTM1OTg=","avatar_url":"https://avatars2.githubusercontent.com/u/1653598?v=4","gravatar_id":"","url":"https://api.github.com/users/bakkot","html_url":"https://github.com/bakkot","followers_url":"https://api.github.com/users/bakkot/followers","following_url":"https://api.github.com/users/bakkot/following{/other_user}","gists_url":"https://api.github.com/users/bakkot/gists{/gist_id}","starred_url":"https://api.github.com/users/bakkot/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bakkot/subscriptions","organizations_url":"https://api.github.com/users/bakkot/orgs","repos_url":"https://api.github.com/users/bakkot/repos","events_url":"https://api.github.com/users/bakkot/events{/privacy}","received_events_url":"https://api.github.com/users/bakkot/received_events","type":"User","site_admin":false}],"milestone":null,"comments":2,"created_at":"2019-11-28T00:35:23Z","updated_at":"2019-11-28T15:57:21Z","closed_at":null,"author_association":"CONTRIBUTOR","body":"I would like to get [completion records](https://github.com/tc39/ecma262/labels/completion%20records) sorted out. My current plan is to\r\n\r\n1. Change the [[Value]] slot of Completion Records to allow it to hold any type of value, not just ECMAScript language value (thus resolving #496 via the first of the two solutions discussed in [this comment](https://github.com/tc39/ecma262/issues/496#issuecomment-249371481))\r\n1. Remove the bit which asserts that all runtime semantics return a completion record\r\n1. Label each abstract operation with the type it returns (in prose), so that non-completion-record-returning operations are not said to return completion records\r\n1. Ensure all callers of an abstract operation consume the returned value properly: in particular, if the operation returns a completion record, it is explicitly treated as such, and if it does not, it is not\r\n1. Remove the bit which allows implicit unwrapping of completion records\r\n\r\nI'm going to prepare a PR which does this as soon as I have time."},"comment":{"url":"https://api.github.com/repos/tc39/ecma262/issues/comments/559543825","html_url":"https://github.com/tc39/ecma262/issues/1796#issuecomment-559543825","issue_url":"https://api.github.com/repos/tc39/ecma262/issues/1796","id":559543825,"node_id":"MDEyOklzc3VlQ29tbWVudDU1OTU0MzgyNQ==","user":{"login":"ljharb","id":45469,"node_id":"MDQ6VXNlcjQ1NDY5","avatar_url":"https://avatars1.githubusercontent.com/u/45469?v=4","gravatar_id":"","url":"https://api.github.com/users/ljharb","html_url":"https://github.com/ljharb","followers_url":"https://api.github.com/users/ljharb/followers","following_url":"https://api.github.com/users/ljharb/following{/other_user}","gists_url":"https://api.github.com/users/ljharb/gists{/gist_id}","starred_url":"https://api.github.com/users/ljharb/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ljharb/subscriptions","organizations_url":"https://api.github.com/users/ljharb/orgs","repos_url":"https://api.github.com/users/ljharb/repos","events_url":"https://api.github.com/users/ljharb/events{/privacy}","received_events_url":"https://api.github.com/users/ljharb/received_events","type":"User","site_admin":false},"created_at":"2019-11-28T15:57:21Z","updated_at":"2019-11-28T15:57:21Z","author_association":"MEMBER","body":"Yes, i think so."}}
{"actor":{"display_login":"ljharb"}}