Skip to content
This repository was archived by the owner on Aug 12, 2026. It is now read-only.

Commit 2159f34

Browse files
committed
The two Kotlin sources 0030 cites become bb ref-reachable
The S4 survey cloned Kotlin's sample and its wit-bindgen fork by hand; 0030 quotes both by path and line, but a fresh clone could not follow the citations — the survey skill's own rule, applied one unit late. Claude-Session: https://claude.ai/code/session_01XF5Hfq4Ca2N2XYEzWQQuHt
1 parent 67d3e99 commit 2159f34

1 file changed

Lines changed: 63 additions & 14 deletions

File tree

‎refs.json‎

Lines changed: 63 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -8,19 +8,68 @@
88
"language SDKs and we want one subdirectory of each, not a fast `bb ref`."
99
],
1010
"refs": {
11-
"clojure": { "url": "https://github.com/clojure/clojure", "why": "the semantics we must match; clojure.lang is the dispatch reference" },
12-
"clojurescript": { "url": "https://github.com/clojure/clojurescript", "why": "the analyzer we plan to reuse, and a second dispatch strategy for the same semantics" },
13-
"ClojureWasm": { "url": "https://github.com/clojurewasm/ClojureWasm", "why": "sibling; read its doc/decisions and debt ledger for what went wrong" },
14-
"zwasm": { "url": "https://github.com/clojurewasm/zwasm", "why": "sibling; a Wasm engine written from scratch, including its JIT notes" },
15-
"clj.wasm": { "url": "https://github.com/kanaka/clj.wasm", "why": "earlier exploration of this exact question" },
16-
"tools.analyzer": { "url": "https://github.com/clojure/tools.analyzer", "why": "the retargetable analyzer; 0022 E defers the front-end choice to reading this, not recalling it" },
17-
"tools.analyzer.jvm": { "url": "https://github.com/clojure/tools.analyzer.jvm", "why": "what a complete tools.analyzer host layer actually costs, measured by example" },
18-
"teavm": { "url": "https://github.com/konsoletyper/teavm", "why": "a production JVM-hosted Java-to-WasmGC compiler; the third prior art for the emitter and object model" },
19-
20-
"wasmtime": { "url": "https://github.com/bytecodealliance/wasmtime", "large": true, "why": "the C API cljwit.host binds to (crates/c-api), and the reference Component Model implementation" },
21-
"component-model": { "url": "https://github.com/WebAssembly/component-model", "why": "the Canonical ABI we must emit by hand (S4); issue #525 is GC-in-ABI, still a pre-proposal" },
22-
"wit-bindgen": { "url": "https://github.com/bytecodealliance/wit-bindgen", "why": "how every other language binds WIT — no Clojure backend, so this is the shape to match, not to use" },
23-
"dart-sdk": { "url": "https://github.com/dart-lang/sdk", "large": true, "why": "dart2wasm: the closest prior art for lowering a GC'd object model onto WasmGC (pkg/dart2wasm)" },
24-
"kotlin": { "url": "https://github.com/JetBrains/kotlin", "large": true, "why": "Kotlin/Wasm: the second WasmGC backend built from scratch rather than via LLVM" }
11+
"clojure": {
12+
"url": "https://github.com/clojure/clojure",
13+
"why": "the semantics we must match; clojure.lang is the dispatch reference"
14+
},
15+
"clojurescript": {
16+
"url": "https://github.com/clojure/clojurescript",
17+
"why": "the analyzer we plan to reuse, and a second dispatch strategy for the same semantics"
18+
},
19+
"ClojureWasm": {
20+
"url": "https://github.com/clojurewasm/ClojureWasm",
21+
"why": "sibling; read its doc/decisions and debt ledger for what went wrong"
22+
},
23+
"zwasm": {
24+
"url": "https://github.com/clojurewasm/zwasm",
25+
"why": "sibling; a Wasm engine written from scratch, including its JIT notes"
26+
},
27+
"clj.wasm": {
28+
"url": "https://github.com/kanaka/clj.wasm",
29+
"why": "earlier exploration of this exact question"
30+
},
31+
"tools.analyzer": {
32+
"url": "https://github.com/clojure/tools.analyzer",
33+
"why": "the retargetable analyzer; 0022 E defers the front-end choice to reading this, not recalling it"
34+
},
35+
"tools.analyzer.jvm": {
36+
"url": "https://github.com/clojure/tools.analyzer.jvm",
37+
"why": "what a complete tools.analyzer host layer actually costs, measured by example"
38+
},
39+
"teavm": {
40+
"url": "https://github.com/konsoletyper/teavm",
41+
"why": "a production JVM-hosted Java-to-WasmGC compiler; the third prior art for the emitter and object model"
42+
},
43+
"wasmtime": {
44+
"url": "https://github.com/bytecodealliance/wasmtime",
45+
"large": true,
46+
"why": "the C API cljwit.host binds to (crates/c-api), and the reference Component Model implementation"
47+
},
48+
"component-model": {
49+
"url": "https://github.com/WebAssembly/component-model",
50+
"why": "the Canonical ABI we must emit by hand (S4); issue #525 is GC-in-ABI, still a pre-proposal"
51+
},
52+
"wit-bindgen": {
53+
"url": "https://github.com/bytecodealliance/wit-bindgen",
54+
"why": "how every other language binds WIT — no Clojure backend, so this is the shape to match, not to use"
55+
},
56+
"dart-sdk": {
57+
"url": "https://github.com/dart-lang/sdk",
58+
"large": true,
59+
"why": "dart2wasm: the closest prior art for lowering a GC'd object model onto WasmGC (pkg/dart2wasm)"
60+
},
61+
"kotlin": {
62+
"url": "https://github.com/JetBrains/kotlin",
63+
"large": true,
64+
"why": "Kotlin/Wasm: the second WasmGC backend built from scratch rather than via LLVM"
65+
},
66+
"sample-wasi-http-kotlin": {
67+
"url": "https://github.com/Kotlin/sample-wasi-http-kotlin",
68+
"why": "the closest prior art to S4: a WasmGC module through embed/new to wasmtime (0030 cites its Makefile)"
69+
},
70+
"kotlin-wit-bindgen": {
71+
"url": "https://github.com/Kotlin/wit-bindgen",
72+
"why": "Kotlin's wit-bindgen fork: how a GC'd language lowers strings to linear memory (0030 cites kotlin/src/lib.rs)"
73+
}
2574
}
2675
}

0 commit comments

Comments
 (0)