A primeira iteração da coleção de lixo já está disponível no WASM, mas, como as outras propostas que mencionei, é apenas o suficiente para iniciar as coisas. Um ponto importante para essa iteração inicial do WASM GC é que você não paga por isso se não o usar. Os programas WASM que nunca usam a coleta de lixo não terão alterações em seu código.

Duas coisas estão chegando a seguir. O primeiro são recursos mais robustos para o WASM GC, como interação segura com threads. Outro é ter compiladores que o alvo WASM e os tempos de execução portados de WASM utilizam o WASM GC. Para que isso funcione, os compiladores e os tempos de execução em questão precisarão ser modificados. O idioma Kotlin, por exemplo, introduziu uma implementação do WASM que usa o WASM GC, embora ainda seja considerado um projeto de qualidade alfa.

O caminho para a coleta de lixo revela um padrão para outros principais recursos do WASM. Apenas ter um recurso definido formalmente em uma especificação ou adicionado aos horários de execução disponível não é suficiente. Todos os idiomas que compilam o WASM devem suportar o recurso diretamente para aproveitar ao máximo e a linha do tempo para isso variará com cada idioma. Dito isto, os idiomas que podem compilar diretamente ao WASM (como a ferrugem) provavelmente serão mais rápidos em adicionar suporte, enquanto aqueles com um tempo de execução portado (como Python ou Go) ficarão atrasados. A implementação de suporte para novos recursos é mais direta para idiomas que compilam diretamente ao WASM do que para aqueles que não o fazem.