{"action":"created","issue":{"url":"https://api.github.com/repos/WebAssembly/spec/issues/261","repository_url":"https://api.github.com/repos/WebAssembly/spec","labels_url":"https://api.github.com/repos/WebAssembly/spec/issues/261/labels{/name}","comments_url":"https://api.github.com/repos/WebAssembly/spec/issues/261/comments","events_url":"https://api.github.com/repos/WebAssembly/spec/issues/261/events","html_url":"https://github.com/WebAssembly/spec/pull/261","id":140400333,"number":261,"title":"Binary encoder + various cleanup","user":{"login":"rossberg-chromium","id":4247099,"avatar_url":"https://avatars.githubusercontent.com/u/4247099?v=3","gravatar_id":"","url":"https://api.github.com/users/rossberg-chromium","html_url":"https://github.com/rossberg-chromium","followers_url":"https://api.github.com/users/rossberg-chromium/followers","following_url":"https://api.github.com/users/rossberg-chromium/following{/other_user}","gists_url":"https://api.github.com/users/rossberg-chromium/gists{/gist_id}","starred_url":"https://api.github.com/users/rossberg-chromium/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/rossberg-chromium/subscriptions","organizations_url":"https://api.github.com/users/rossberg-chromium/orgs","repos_url":"https://api.github.com/users/rossberg-chromium/repos","events_url":"https://api.github.com/users/rossberg-chromium/events{/privacy}","received_events_url":"https://api.github.com/users/rossberg-chromium/received_events","type":"User","site_admin":false},"labels":[],"state":"closed","locked":false,"assignee":null,"milestone":{"url":"https://api.github.com/repos/WebAssembly/spec/milestones/2","html_url":"https://github.com/WebAssembly/spec/milestones/MVP","labels_url":"https://api.github.com/repos/WebAssembly/spec/milestones/2/labels","id":1373085,"number":2,"title":"MVP","description":"","creator":{"login":"sunfishcode","id":4503403,"avatar_url":"https://avatars.githubusercontent.com/u/4503403?v=3","gravatar_id":"","url":"https://api.github.com/users/sunfishcode","html_url":"https://github.com/sunfishcode","followers_url":"https://api.github.com/users/sunfishcode/followers","following_url":"https://api.github.com/users/sunfishcode/following{/other_user}","gists_url":"https://api.github.com/users/sunfishcode/gists{/gist_id}","starred_url":"https://api.github.com/users/sunfishcode/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/sunfishcode/subscriptions","organizations_url":"https://api.github.com/users/sunfishcode/orgs","repos_url":"https://api.github.com/users/sunfishcode/repos","events_url":"https://api.github.com/users/sunfishcode/events{/privacy}","received_events_url":"https://api.github.com/users/sunfishcode/received_events","type":"User","site_admin":false},"open_issues":0,"closed_issues":5,"state":"open","created_at":"2015-10-23T18:36:04Z","updated_at":"2016-04-21T13:29:24Z","due_on":null,"closed_at":null},"comments":1,"created_at":"2016-03-12T17:11:59Z","updated_at":"2016-04-21T13:29:24Z","closed_at":"2016-04-21T13:29:24Z","pull_request":{"url":"https://api.github.com/repos/WebAssembly/spec/pulls/261","html_url":"https://github.com/WebAssembly/spec/pull/261","diff_url":"https://github.com/WebAssembly/spec/pull/261.diff","patch_url":"https://github.com/WebAssembly/spec/pull/261.patch"},"body":"First step towards handling the binary format in the spec. The patch was getting large, so I decided to split it up. This part includes the encoder, and several additions to make it useful. For example, you can now invoke the interpreter like\r\n```\r\nwasm module.wast -o module.wasm\r\n```\r\nto convert from text to binary. In a while, the same will also be possible in the inverse direction.\r\n\r\nI also extended the script language with `(input <file>)` and `(output <file>)` commands. Both are supposed to be able to handle both wast and wasm eventually. The former allows including other scripts or binary modules, the latter allows conversion as part of a script.\r\n\r\nFinally, the command line now supports an `-e <script>` option, which enables to give commands directly. This is useful, for example, when intermingled with binary module arguments, e.g., to invoke exports:\r\n\r\n```\r\nwasm module.wasm -e '(invoke \"foo\")'\r\n```\r\n\r\nCaveat: the binary format implemented in this patch already uses post-order. There currently is no compatible consumer (the decoder for the follow-up patch isn't quite ready yet), so this is completely untested. Uploading it anyway, to factor reviewing a little bit. Tests will follow once the decoder is ready."},"comment":{"url":"https://api.github.com/repos/WebAssembly/spec/issues/comments/212919856","html_url":"https://github.com/WebAssembly/spec/pull/261#issuecomment-212919856","issue_url":"https://api.github.com/repos/WebAssembly/spec/issues/261","id":212919856,"user":{"login":"rossberg-chromium","id":4247099,"avatar_url":"https://avatars.githubusercontent.com/u/4247099?v=3","gravatar_id":"","url":"https://api.github.com/users/rossberg-chromium","html_url":"https://github.com/rossberg-chromium","followers_url":"https://api.github.com/users/rossberg-chromium/followers","following_url":"https://api.github.com/users/rossberg-chromium/following{/other_user}","gists_url":"https://api.github.com/users/rossberg-chromium/gists{/gist_id}","starred_url":"https://api.github.com/users/rossberg-chromium/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/rossberg-chromium/subscriptions","organizations_url":"https://api.github.com/users/rossberg-chromium/orgs","repos_url":"https://api.github.com/users/rossberg-chromium/repos","events_url":"https://api.github.com/users/rossberg-chromium/events{/privacy}","received_events_url":"https://api.github.com/users/rossberg-chromium/received_events","type":"User","site_admin":false},"created_at":"2016-04-21T13:29:24Z","updated_at":"2016-04-21T13:29:24Z","body":"Superseded by #268."}}