Sažetak
JavaScript-based eco-system used for the development of web-based applications presents many advantages ; it is simple to develop, JavaScript is an interpreted programming language meaning the system a reduced compilation time, and it offers a lot of third-party libraries and extensions. However, with the rise of modern highly user-interactive web sites and browser- based video games, the JavaScript engine lacks performance and responsiveness itself. Developers tend to use a lot of tools and languages such as C++, Python, Go, or similar to create a user- interactive and interoperable system. The interoperability modules offer great advantages but often lack in execution due to high complexity and longer compilation time. This paper studies WebAssembly, a binary format compilation target that includes a low-level assembly-like language used for targeting from other programming languages. The binary format allows near-native performance level due to its compactness, as it prioritizes usage of low-level languages. Simultaneously, in this paper, we continued our research regarding the GraalVM ecosystem with a guest language implementation of a WebAssembly based system, TruffleWasm, which is hosted on GraalVM and Truffle Java framework. Finally, we present the system architecture, several performance tests within our academic environment, as well as a review on the GraalVM based eco- system.
Ključne riječi
WebAssembly ; GraalVM ; JavaScript ; Truffle ; Binary Format