Remix.run Logo
▲ teki_one 11 hours ago

Why?

▲spankalee 11 hours ago | parent | next [-]

Wasm is a first-class target for Rust, which produces faster and smaller Wasm binaries. My understanding is that you need to use TinyGo to reasonably target Wasm with Go.

Go having a garbage collector isn't necessarily bad, since Wasm has GC, but I think Go's GC can't easily use Wasm GC because Go has interior pointers.

▲win311fwg 6 hours ago | parent [-]

WASM is also a first-class target for Go (gc).

However, it has a relatively large runtime, so TinyGo is often preferred when bundle size needs to be small.

▲0x696C6961 11 hours ago | parent | prev | next [-]

I think the main advantage is size. Rust doesn't need to include the runtime.

▲cmrdporcupine 11 hours ago | parent | prev [-]

I'm assuming they mean because it doesn't need a garbage collector or much of a runtime at all. You can target direct to WASM and use I guess WASI, while Go brings with it a garbage collector and so on.