{"action":"created","comment":{"url":"https://api.github.com/repos/WebAssembly/design/pulls/comments/70164155","id":70164155,"diff_hunk":"@@ -43,43 +38,377 @@ support more human-readable representations, but never at the cost of accurate r\n \n # Official Text Format\n \n-WebAssembly currently doesn't have a final, official, text format. As detailed above the\n-main purpose of the text format will be for human consumption, feedback from humans on\n-readability will therefore factor into standardizing a text format.\n-\n-There are, however, prototype syntaxes which are used to bring up WebAssembly: it's easier\n-to develop using a text format than it is with a binary format, even if the ultimate\n-WebAssembly format will be binary. Most of these prototypes use [s-expressions][] because they\n-can easily represent expression trees and [ASTs](AstSemantics.md) (as opposed to CFGs)\n-and don't have much of a syntax to speak of (avoiding syntax bikeshed discussions).\n-\n-  [s-expressions]: https://en.wikipedia.org/wiki/S-expression\n-\n-Here are some of these prototypes. Keep in mind that these *aren't* official, and the final\n-official format may look entirely different:\n-\n-* [Prototype specification][] consumes an s-expression syntax.\n-* [WAVM backend][] consumes compatible s-expressions.\n-* [sexpr-wasm prototype][] consumes compatible s-expressions, and works closely with the [V8 prototype][].\n-* [LLVM backend][] (the `CHECK:` parts of these tests) emits compatible s-expressions.\n-* [ilwasm][] emits compatible s-expressions.\n-* [wassembler][] consumes a different syntax, and works closely with the [V8 prototype][].\n-* [binaryen][] can consume compatible s-expressions.\n-\n-  [prototype specification]: https://github.com/WebAssembly/spec/tree/master/ml-proto/test\n-  [LLVM backend]: https://github.com/llvm-mirror/llvm/tree/master/test/CodeGen/WebAssembly\n-  [WAVM backend]: https://github.com/AndrewScheidecker/WAVM/tree/master/Test\n-  [wassembler]: https://github.com/ncbray/wassembler/tree/master/demos\n-  [V8 prototype]: https://github.com/WebAssembly/v8-native-prototype\n-  [ilwasm]: https://github.com/WebAssembly/ilwasm\n-  [sexpr-wasm prototype]: https://github.com/WebAssembly/sexpr-wasm-prototype\n-  [binaryen]: https://github.com/WebAssembly/binaryen\n+## Philosophy:\n+\n+ - Use JS-style sensibilities when there aren't reasons otherwise.\n+ - It's a compiler target, not a programming language, but readability still counts.\n+\n+\n+## High-level summary:\n+\n+ - Curly braces for function bodies, blocks, etc., `/* */`-style and `//`-style\n+   comments, and whitespace is not significant.\n+   Nested `/* */`-style comments follow JavaScript's rules.\n+\n+ - Semicolons separate expressions inside blocks, loops, and so on. The\n+   last statement in the sequence may omit its trailing semicolon to indicate\n+   that its result is being used as the result value of the parent construct.\n+\n+ - `get_local` looks like a simple reference; `set_local` looks like an\n+   assignment. Constants use a simple literal syntax. This makes wasm's most\n+   frequent opcodes very concise.\n+\n+ - Infix syntax for arithmetic, with simple overloading. Explicit grouping via\n+   parentheses. Concise and familiar with JS and others.\n+\n+ - Prefix syntax with comma-separated operands for all other operators. For less\n+   frequent opcodes, prefer just presenting operator names, so that they're easy\n+   to identify.\n+\n+ - Typescript-style `name: type` declarations.\n+\n+ - Parentheses around call arguments, eg. `call $functionname(arg, arg, arg)`,\n+   and `if` conditions, eg. `if ($condition) { call $then() } else { call $else() }`,\n+   because they're familiar to many people and not too intrusive.\n+\n+ - Put labels \"where they go\".\n+\n+\n+## Examples:\n+\n+### Basics\n+\n+```\n+  function $fac-opt ($a:i64) : (i64) {\n+    var $x:i64;\n+    $x = 1;\n+    br_if ($a <s 2) $end;\n+    loop $loop {\n+      $x = $x * $a;\n+      $a = $a + -1;\n+      br_if ($a >s 1) $loop;\n+    }\n+  $end:\n+    $x\n+  }\n+```\n+\n+(from [fac.wast](https://github.com/WebAssembly/spec/blob/master/ml-proto/test/fac.wast))\n+\n+The function return type has parentheses for symmetry with the parameter types,\n+anticipating adding multiple return values to wasm in the future.\n+\n+The curly braces around the function body are not a `block` node; they are part\n+of the function syntax, reflecting how function bodies in wasm are block-like.\n+\n+The last expression of the function body here acts as its return value. This\n+works in all block-like constructs (`block`, function body, `if`, etc.)\n+\n+`>s` means *signed* greater-than. explicit unsigned or signed operators will be\n+suffixed with 'u' or 's', respectively.\n+\n+The `$` sigil on user names cleanly ensures that they never collide with wasm\n+keywords, present or future.\n+\n+The last statement has no trailing semicolon; this indicates that its result\n+value is being used as the block result value.\n+\n+\n+### Linear memory addresses\n+\n+Addresses are printed as `[base,+offset,align=val]`. The offset can be omitted\n+when it is zero, and the alignment can be omitted for natural alignment.\n+\n+Addresses are prefixed by an identifier giving the type of a load, or the\n+type of the value to store, optionally followed by a colon and a number of\n+bits of memory to access (for truncating stores or extending loads).\n+For loads, the number of bits is followed by `s` or `u` for signed and\n+unsigned.\n+\n+Examples:\n+\n+```\n+  function $loads_and_stores ($ptr : i32) : (i32) {\n+    var $t : i32;\n+\n+    // Simple cases.\n+    $t = i32[$ptr];           // plain i32.load from address $ptr\n+    i32[$ptr] = $t;           // plain i32.store of $t to address $ptr\n+\n+    // Various modifiers.\n+    f32[$ptr,+4] = -0x1.8p0;  // f32.store to address $ptr plus 4\n+    i64:8s[$ptr,+17,align=1]; // i64.load8_s from address $ptr plus 17 with alignment 1\n+  }\n+```\n+\n+### A slightly larger example:\n+\n+Here's some C code:\n+\n+```\n+  float Q_rsqrt(float number)\n+  {\n+      long i;\n+      float x2, y;\n+      const float threehalfs = 1.5F;\n+\n+      x2 = number * 0.5F;\n+      y  = number;\n+      i  = *(long *) &y;\n+      i  = 0x5f3759df - (i >> 1);\n+      y  = *(float *) &i;\n+      y  = y * (threehalfs - (x2 * y * y));\n+      y  = y * (threehalfs - (x2 * y * y));\n+\n+      return y;\n+  }\n+```\n+\n+Here's the corresponding LLVM wasm backend output + binaryen + slight tweaks:\n+\n+```\n+  (func $Q_rsqrt (param $0 f32) (result f32)\n+    (local $1 f32)\n+    (set_local $1\n+      (f32.reinterpret/i32\n+        (i32.sub\n+          (i32.const 1597463007)\n+          (i32.shr_s\n+            (i32.reinterpret/f32\n+              (get_local $0))\n+            (i32.const 1)))))\n+    (set_local $1\n+      (f32.mul\n+        (get_local $1)\n+        (f32.sub\n+          (f32.const 0x1.8p+0)\n+          (f32.mul\n+            (get_local $1)\n+            (f32.mul\n+              (get_local $1)\n+              (set_local $0\n+                (f32.mul\n+                  (get_local $0)\n+                  (f32.const 0x1p-1))))))))\n+    (f32.mul\n+      (get_local $1)\n+      (f32.sub\n+        (f32.const 0x1.8p+0)\n+        (f32.mul\n+          (get_local $1)\n+          (f32.mul\n+            (get_local $0)\n+            (get_local $1)))))\n+   )\n+```\n+\n+And here's the proposed text syntax:\n+\n+```\n+   function $Q_rsqrt ($0:f32) : (f32) {\n+     var $1:f32;\n+     $1 = f32.reinterpret/i32(1597463007 - ((i32.reinterpret/f32($0)) >> 1));\n+     $1 = $1 * (0x1.8p0 - $1 * ($0 = $0 * 0x1p-1) * $1);","path":"TextFormat.md","position":246,"original_position":242,"commit_id":"2a2b06dc459c2f29430d6a910565d867ae851946","original_commit_id":"be57b82a3665a41a799c1cafad09c9ae3e6c81e1","user":{"login":"drom","id":511872,"avatar_url":"https://avatars.githubusercontent.com/u/511872?v=3","gravatar_id":"","url":"https://api.github.com/users/drom","html_url":"https://github.com/drom","followers_url":"https://api.github.com/users/drom/followers","following_url":"https://api.github.com/users/drom/following{/other_user}","gists_url":"https://api.github.com/users/drom/gists{/gist_id}","starred_url":"https://api.github.com/users/drom/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/drom/subscriptions","organizations_url":"https://api.github.com/users/drom/orgs","repos_url":"https://api.github.com/users/drom/repos","events_url":"https://api.github.com/users/drom/events{/privacy}","received_events_url":"https://api.github.com/users/drom/received_events","type":"User","site_admin":false},"body":"I think JS (C++14) style binary literals\"  `0b010101` would be nice too.","created_at":"2016-07-09T08:09:06Z","updated_at":"2016-07-09T08:09:06Z","html_url":"https://github.com/WebAssembly/design/pull/704#discussion_r70164155","pull_request_url":"https://api.github.com/repos/WebAssembly/design/pulls/704","_links":{"self":{"href":"https://api.github.com/repos/WebAssembly/design/pulls/comments/70164155"},"html":{"href":"https://github.com/WebAssembly/design/pull/704#discussion_r70164155"},"pull_request":{"href":"https://api.github.com/repos/WebAssembly/design/pulls/704"}}},"pull_request":{"url":"https://api.github.com/repos/WebAssembly/design/pulls/704","id":72914562,"html_url":"https://github.com/WebAssembly/design/pull/704","diff_url":"https://github.com/WebAssembly/design/pull/704.diff","patch_url":"https://github.com/WebAssembly/design/pull/704.patch","issue_url":"https://api.github.com/repos/WebAssembly/design/issues/704","number":704,"state":"open","locked":false,"title":"A JS-style Text Format","user":{"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},"body":"This proposes an official text format for WebAssembly, aimed at browsers to use in \"View Source\", debugging, and related tooling. It uses a JavaScript-like syntax for readability and familiarity on the Web, though it differs from JS in several respects, as it aims to reflect the underlying WebAssembly language.\r\n\r\nThis proposal is meant to serve as a beginning. We'd like to establish this as a concrete place to start, so that we can then iterate, as we did with BinaryFormat.md.\r\n\r\nYou can try out a prototype of this proposal yourself in [Firefox Nightly](https://nightly.mozilla.org/), for example by playing the [AngryBots demo](http://webassembly.github.io/demo/) with the debugger open and examining the wasm file in the debugger.\r\n\r\n[Here's a screenshot of it in action.](http://people.mozilla.org/~dgohman/angrybots-text.png)\r\n\r\nA more complete description of the grammar and a parser implementation are available [here](https://github.com/mbebenita/was). If this proposal is accepted, we'd like to move this repository under the WebAssembly GitHub organization to serve as the interim spec for the text format during the initial discussion.\r\n","created_at":"2016-06-07T17:20:08Z","updated_at":"2016-07-09T08:09:06Z","closed_at":null,"merged_at":null,"merge_commit_sha":"823783d9ea3c715a229207de01923eed44a8eb20","assignee":null,"assignees":[],"milestone":{"url":"https://api.github.com/repos/WebAssembly/design/milestones/2","html_url":"https://github.com/WebAssembly/design/milestones/MVP","labels_url":"https://api.github.com/repos/WebAssembly/design/milestones/2/labels","id":1138963,"number":2,"title":"MVP","description":"See [here](https://github.com/WebAssembly/design/blob/master/MVP.md) for details.","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":49,"closed_issues":74,"state":"open","created_at":"2015-05-29T00:13:49Z","updated_at":"2016-07-09T00:52:08Z","due_on":null,"closed_at":null},"commits_url":"https://api.github.com/repos/WebAssembly/design/pulls/704/commits","review_comments_url":"https://api.github.com/repos/WebAssembly/design/pulls/704/comments","review_comment_url":"https://api.github.com/repos/WebAssembly/design/pulls/comments{/number}","comments_url":"https://api.github.com/repos/WebAssembly/design/issues/704/comments","statuses_url":"https://api.github.com/repos/WebAssembly/design/statuses/2a2b06dc459c2f29430d6a910565d867ae851946","head":{"label":"WebAssembly:text-format-proposal","ref":"text-format-proposal","sha":"2a2b06dc459c2f29430d6a910565d867ae851946","user":{"login":"WebAssembly","id":11578470,"avatar_url":"https://avatars.githubusercontent.com/u/11578470?v=3","gravatar_id":"","url":"https://api.github.com/users/WebAssembly","html_url":"https://github.com/WebAssembly","followers_url":"https://api.github.com/users/WebAssembly/followers","following_url":"https://api.github.com/users/WebAssembly/following{/other_user}","gists_url":"https://api.github.com/users/WebAssembly/gists{/gist_id}","starred_url":"https://api.github.com/users/WebAssembly/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/WebAssembly/subscriptions","organizations_url":"https://api.github.com/users/WebAssembly/orgs","repos_url":"https://api.github.com/users/WebAssembly/repos","events_url":"https://api.github.com/users/WebAssembly/events{/privacy}","received_events_url":"https://api.github.com/users/WebAssembly/received_events","type":"Organization","site_admin":false},"repo":{"id":34808241,"name":"design","full_name":"WebAssembly/design","owner":{"login":"WebAssembly","id":11578470,"avatar_url":"https://avatars.githubusercontent.com/u/11578470?v=3","gravatar_id":"","url":"https://api.github.com/users/WebAssembly","html_url":"https://github.com/WebAssembly","followers_url":"https://api.github.com/users/WebAssembly/followers","following_url":"https://api.github.com/users/WebAssembly/following{/other_user}","gists_url":"https://api.github.com/users/WebAssembly/gists{/gist_id}","starred_url":"https://api.github.com/users/WebAssembly/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/WebAssembly/subscriptions","organizations_url":"https://api.github.com/users/WebAssembly/orgs","repos_url":"https://api.github.com/users/WebAssembly/repos","events_url":"https://api.github.com/users/WebAssembly/events{/privacy}","received_events_url":"https://api.github.com/users/WebAssembly/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/WebAssembly/design","description":"WebAssembly Design Documents","fork":false,"url":"https://api.github.com/repos/WebAssembly/design","forks_url":"https://api.github.com/repos/WebAssembly/design/forks","keys_url":"https://api.github.com/repos/WebAssembly/design/keys{/key_id}","collaborators_url":"https://api.github.com/repos/WebAssembly/design/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/WebAssembly/design/teams","hooks_url":"https://api.github.com/repos/WebAssembly/design/hooks","issue_events_url":"https://api.github.com/repos/WebAssembly/design/issues/events{/number}","events_url":"https://api.github.com/repos/WebAssembly/design/events","assignees_url":"https://api.github.com/repos/WebAssembly/design/assignees{/user}","branches_url":"https://api.github.com/repos/WebAssembly/design/branches{/branch}","tags_url":"https://api.github.com/repos/WebAssembly/design/tags","blobs_url":"https://api.github.com/repos/WebAssembly/design/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/WebAssembly/design/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/WebAssembly/design/git/refs{/sha}","trees_url":"https://api.github.com/repos/WebAssembly/design/git/trees{/sha}","statuses_url":"https://api.github.com/repos/WebAssembly/design/statuses/{sha}","languages_url":"https://api.github.com/repos/WebAssembly/design/languages","stargazers_url":"https://api.github.com/repos/WebAssembly/design/stargazers","contributors_url":"https://api.github.com/repos/WebAssembly/design/contributors","subscribers_url":"https://api.github.com/repos/WebAssembly/design/subscribers","subscription_url":"https://api.github.com/repos/WebAssembly/design/subscription","commits_url":"https://api.github.com/repos/WebAssembly/design/commits{/sha}","git_commits_url":"https://api.github.com/repos/WebAssembly/design/git/commits{/sha}","comments_url":"https://api.github.com/repos/WebAssembly/design/comments{/number}","issue_comment_url":"https://api.github.com/repos/WebAssembly/design/issues/comments{/number}","contents_url":"https://api.github.com/repos/WebAssembly/design/contents/{+path}","compare_url":"https://api.github.com/repos/WebAssembly/design/compare/{base}...{head}","merges_url":"https://api.github.com/repos/WebAssembly/design/merges","archive_url":"https://api.github.com/repos/WebAssembly/design/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/WebAssembly/design/downloads","issues_url":"https://api.github.com/repos/WebAssembly/design/issues{/number}","pulls_url":"https://api.github.com/repos/WebAssembly/design/pulls{/number}","milestones_url":"https://api.github.com/repos/WebAssembly/design/milestones{/number}","notifications_url":"https://api.github.com/repos/WebAssembly/design/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/WebAssembly/design/labels{/name}","releases_url":"https://api.github.com/repos/WebAssembly/design/releases{/id}","deployments_url":"https://api.github.com/repos/WebAssembly/design/deployments","created_at":"2015-04-29T17:36:05Z","updated_at":"2016-07-08T17:53:21Z","pushed_at":"2016-07-09T00:52:08Z","git_url":"git://github.com/WebAssembly/design.git","ssh_url":"git@github.com:WebAssembly/design.git","clone_url":"https://github.com/WebAssembly/design.git","svn_url":"https://github.com/WebAssembly/design","homepage":"http://webassembly.github.io/","size":2279,"stargazers_count":5901,"watchers_count":5901,"language":null,"has_issues":true,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":321,"mirror_url":null,"open_issues_count":87,"forks":321,"open_issues":87,"watchers":5901,"default_branch":"master"}},"base":{"label":"WebAssembly:master","ref":"master","sha":"fe30995024c050c6c28ebfc13dae6ed4297e8158","user":{"login":"WebAssembly","id":11578470,"avatar_url":"https://avatars.githubusercontent.com/u/11578470?v=3","gravatar_id":"","url":"https://api.github.com/users/WebAssembly","html_url":"https://github.com/WebAssembly","followers_url":"https://api.github.com/users/WebAssembly/followers","following_url":"https://api.github.com/users/WebAssembly/following{/other_user}","gists_url":"https://api.github.com/users/WebAssembly/gists{/gist_id}","starred_url":"https://api.github.com/users/WebAssembly/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/WebAssembly/subscriptions","organizations_url":"https://api.github.com/users/WebAssembly/orgs","repos_url":"https://api.github.com/users/WebAssembly/repos","events_url":"https://api.github.com/users/WebAssembly/events{/privacy}","received_events_url":"https://api.github.com/users/WebAssembly/received_events","type":"Organization","site_admin":false},"repo":{"id":34808241,"name":"design","full_name":"WebAssembly/design","owner":{"login":"WebAssembly","id":11578470,"avatar_url":"https://avatars.githubusercontent.com/u/11578470?v=3","gravatar_id":"","url":"https://api.github.com/users/WebAssembly","html_url":"https://github.com/WebAssembly","followers_url":"https://api.github.com/users/WebAssembly/followers","following_url":"https://api.github.com/users/WebAssembly/following{/other_user}","gists_url":"https://api.github.com/users/WebAssembly/gists{/gist_id}","starred_url":"https://api.github.com/users/WebAssembly/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/WebAssembly/subscriptions","organizations_url":"https://api.github.com/users/WebAssembly/orgs","repos_url":"https://api.github.com/users/WebAssembly/repos","events_url":"https://api.github.com/users/WebAssembly/events{/privacy}","received_events_url":"https://api.github.com/users/WebAssembly/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/WebAssembly/design","description":"WebAssembly Design Documents","fork":false,"url":"https://api.github.com/repos/WebAssembly/design","forks_url":"https://api.github.com/repos/WebAssembly/design/forks","keys_url":"https://api.github.com/repos/WebAssembly/design/keys{/key_id}","collaborators_url":"https://api.github.com/repos/WebAssembly/design/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/WebAssembly/design/teams","hooks_url":"https://api.github.com/repos/WebAssembly/design/hooks","issue_events_url":"https://api.github.com/repos/WebAssembly/design/issues/events{/number}","events_url":"https://api.github.com/repos/WebAssembly/design/events","assignees_url":"https://api.github.com/repos/WebAssembly/design/assignees{/user}","branches_url":"https://api.github.com/repos/WebAssembly/design/branches{/branch}","tags_url":"https://api.github.com/repos/WebAssembly/design/tags","blobs_url":"https://api.github.com/repos/WebAssembly/design/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/WebAssembly/design/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/WebAssembly/design/git/refs{/sha}","trees_url":"https://api.github.com/repos/WebAssembly/design/git/trees{/sha}","statuses_url":"https://api.github.com/repos/WebAssembly/design/statuses/{sha}","languages_url":"https://api.github.com/repos/WebAssembly/design/languages","stargazers_url":"https://api.github.com/repos/WebAssembly/design/stargazers","contributors_url":"https://api.github.com/repos/WebAssembly/design/contributors","subscribers_url":"https://api.github.com/repos/WebAssembly/design/subscribers","subscription_url":"https://api.github.com/repos/WebAssembly/design/subscription","commits_url":"https://api.github.com/repos/WebAssembly/design/commits{/sha}","git_commits_url":"https://api.github.com/repos/WebAssembly/design/git/commits{/sha}","comments_url":"https://api.github.com/repos/WebAssembly/design/comments{/number}","issue_comment_url":"https://api.github.com/repos/WebAssembly/design/issues/comments{/number}","contents_url":"https://api.github.com/repos/WebAssembly/design/contents/{+path}","compare_url":"https://api.github.com/repos/WebAssembly/design/compare/{base}...{head}","merges_url":"https://api.github.com/repos/WebAssembly/design/merges","archive_url":"https://api.github.com/repos/WebAssembly/design/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/WebAssembly/design/downloads","issues_url":"https://api.github.com/repos/WebAssembly/design/issues{/number}","pulls_url":"https://api.github.com/repos/WebAssembly/design/pulls{/number}","milestones_url":"https://api.github.com/repos/WebAssembly/design/milestones{/number}","notifications_url":"https://api.github.com/repos/WebAssembly/design/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/WebAssembly/design/labels{/name}","releases_url":"https://api.github.com/repos/WebAssembly/design/releases{/id}","deployments_url":"https://api.github.com/repos/WebAssembly/design/deployments","created_at":"2015-04-29T17:36:05Z","updated_at":"2016-07-08T17:53:21Z","pushed_at":"2016-07-09T00:52:08Z","git_url":"git://github.com/WebAssembly/design.git","ssh_url":"git@github.com:WebAssembly/design.git","clone_url":"https://github.com/WebAssembly/design.git","svn_url":"https://github.com/WebAssembly/design","homepage":"http://webassembly.github.io/","size":2279,"stargazers_count":5901,"watchers_count":5901,"language":null,"has_issues":true,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":321,"mirror_url":null,"open_issues_count":87,"forks":321,"open_issues":87,"watchers":5901,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/WebAssembly/design/pulls/704"},"html":{"href":"https://github.com/WebAssembly/design/pull/704"},"issue":{"href":"https://api.github.com/repos/WebAssembly/design/issues/704"},"comments":{"href":"https://api.github.com/repos/WebAssembly/design/issues/704/comments"},"review_comments":{"href":"https://api.github.com/repos/WebAssembly/design/pulls/704/comments"},"review_comment":{"href":"https://api.github.com/repos/WebAssembly/design/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/WebAssembly/design/pulls/704/commits"},"statuses":{"href":"https://api.github.com/repos/WebAssembly/design/statuses/2a2b06dc459c2f29430d6a910565d867ae851946"}}}}
{"actor":{"display_login":"drom"}}