In modern software development, the JavaScript ecosystem of various frameworks and libraries used to develop contemporary web applications presents many advantages. JavaScript is a widely known interpreted programming language, simple to learn and start development, and with numerous third-party libraries and extensions. However, with the rise of highly user-interactive websites and browser-based games, in some cases, JavaScripts executable engine could lack in performance. Therefore, developers could combine several other programming languages to create a polyglot user-interactive interoperable system to develop efficient modern web applications. The interoperability modules offer significant advantages but also present challenges in the execution due to high complexity and longer compilation times. This paper explores WebAssembly, a binary format compilation target with 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. Moreover, as a continuation of our previous research of the GraalVM ecosystem, we analyzed a guest language implementation of a WebAssembly based system, TruffleWasm, hosted on GraalVM and Truffle Java framework. This paper presents the architecture and review of the TruffleWasm within the GraalVM-based ecosystem as well as from performance test results within our academic environment.
翻译:在现代软件开发中,用于开发当代网络应用的各种框架和图书馆的JavaScript生态系统有许多优势。 JavaScript是一种广为人知的、可解释的、易于学习和开始开发的编程语言,具有许多第三方图书馆和扩展,然而,随着用户互动程度高的网站和浏览器游戏的兴起,在某些情况下,JavaScripts执行引擎可能缺乏性能,因此,开发商可以将其他几种编程语言结合起来,建立一个多球状用户互动互动互动系统,以开发高效的现代网络应用。互操作性模块提供了巨大的优势,但也由于高度复杂和较长的编程时间,在执行过程中提出了挑战。本文探讨了WebAsseal这一二进制格式汇编目标,该二进式格式的组合式语言用于从其他编程语言中选择目标。由于简洁,JavaScripits可操作的引擎可能无法发挥接近性能的水平。此外,作为我们以前对GraalVM生态系统生态系统的系统、TruffWasWasm 以及GraVM内部的系统测试架构,我们从GraVM 和SROVff内部分析了以GraVM 的系统内部的图像环境内部的Srual-Suprual-Suprual-Suprual-vial-vimal-vial-vidustral-vical-vial-vidual-viewvial-views