"The frontend — lexer, parser, semantic analysis (it’s called mkf) — hands off to two of its own IRs before writing WASM-GC by hand."
So those frontend tools do the writing, not the developer?
That's not "by hand". One might say "writes WASM-GC directly". But no that also doesn't happen, it goes through an IR first?
Personally I wouldn't put too much trust in a developer that even can't get their terminology correct. Well either that or I foobar'd my understanding of the writeup?
Anyway, looks like an interesting project.
I agree. "One pass" is wrong, and I shouldn't have written that. This is a normal multi-stage pipeline: AST -> HIR -> MIR -> WASM-GC, meaning each reduction is one pass.
I know, Kotlin has forward references and actual type inference, so name/type resolution requires multiple passes, which is precisely why there's explicit forward reference processing there. So, a single pass is never the case. My statement was incorrect.
What I meant was that it goes from source code to WASM-GC in one go, entirely in the browser (no LLVM, no Binary, no round trip to the server, and the WASM-GC backend is handwritten in C).
> hands off to two of its own IRs before writing WASM-GC by hand
So it's not "one pass" lol. Do you know what a pass is?
Not that it matters - this AI is claiming "one pass" as though that's a good thing, but it's usually not. One-pass compilers can't typecheck forward references.