Google Sheets has enhanced desktop functionality by doubling the speed of calculations in the table through the conversion of computation code to WebAssembly Garbage Collection (WasmGC) instead of running it as traditional JavaScript.
Initially, Google Sheets calculation engine operated on the server side, written in Java and first implemented in 2006. It later transitioned to computations on the browser side in 2013, initially done through Google Web Toolkit (GWT) before switching to Java aided by Java to Closure JavaScript transpiler (J2CL).
The drawback of using JavaScript is its slower performance compared to Java, up to 3 times slower, due to the limitations of its dynamic nature. Google’s team resolved this issue by converting it to WebAssembly, transforming Java code that requires garbage collection into WebAssembly through WasmGC.
This project is a collaboration between the Chrome team and Google Workspace team, with the notable achievement of compatibility with Microsoft Edge. The team aims to make it compatible with Safari and Firefox in the near future.
Source: Web.dev via Google
TLDR: Google Sheets has upgraded to WebAssembly Garbage Collection for faster computations, transitioning from Java to JavaScript for improved performance and compatibility with various browsers.
Leave a Comment