WebAssembly doveva sostituire JavaScript nel browser. Non è successo. Quello che sta succedendo invece è più interessante.
Un runtime senza casa diventa un runtime ovunque
Il browser non è mai stato l’ambiente giusto per il vero potenziale di WebAssembly. I vincoli sono troppo stretti, il modello di sicurezza troppo restrittivo, i casi d’uso troppo limitati.
Il cloud è una storia diversa.
Cloudflare Workers, Fastly Compute e un elenco crescente di runtime edge ora supportano WASM nativamente. La proposta è convincente: scrivi una volta in qualsiasi linguaggio — Rust, Go, C++, persino Python — e distribuisci su centinaia di nodi edge in millisecondi, con cold start misurati in microsecondi invece che in secondi.
La narrativa del container killer
WASM non ucciderà Docker domani. Ma la pressione architetturale è reale. Un modulo WASM si avvia più velocemente, usa meno memoria e fornisce un sandboxing più forte di un processo containerizzato. Per la classe di funzioni stateless e di breve durata che alimentano la maggior parte dei carichi serverless, i compromessi favoriscono sempre più WASM.
Aziende come Fermyon e Cosmonic stanno scommettendo l’intero modello di business su questa tesi.
Cosa manca
Il tooling. L’ecosistema WASM sta maturando rapidamente, ma il divario tra scrivere una funzione Rust e distribuirla con fiducia in produzione resta significativo. Il component model, che promette moduli WASM componibili, si sta ancora stabilizzando.
Il futuro è reale. La timeline è semplicemente sempre più lontana di quanto prevedano gli ottimisti.