<p>WebAssembly is already running inside Java applications, but most developers just don&#39;t know it yet.</p><p>In this episode, Andrea Peruffo walks us through how WebAssembly is becoming the modern, safe alternative to JNI. Run Rust, C, and other native libraries directly on the JVM, without the crash risks, per-platform packaging headaches, or the observability blackhole that JNI creates.</p><p>From JRuby&#39;s Prism parser to SQLite and full Postgres running as pure Java bytecode, the use cases are real. And the project making it possible, Endive, under the Bytecode Alliance, is open and ready to explore.</p><p><strong>Guest</strong></p><p>Andrea Peruffo</p><ul><li>GitHub: <a href="https://github.com/andreaTP/" target="_blank" rel="noopener noreferer">https://github.com/andreaTP/</a></li><li>LinkedIn: <a href="https://www.linkedin.com/in/andrea-peruffo-32269178/" target="_blank" rel="noopener noreferer">https://www.linkedin.com/in/andrea-peruffo-32269178/</a></li><li>Bluesky: <a href="https://bsky.app/profile/andreatp.bsky.social" target="_blank" rel="noopener noreferer">https://bsky.app/profile/andreatp.bsky.social<br></a></li></ul><p><strong>Links</strong></p><ul><li><br><a href="https://foojay.io/today/a-new-generation-of-java-libraries-is-born-wasm-becomes-the-implementation-detail/">A New Generation of Java Libraries: Wasm Becomes the Implementation Detail</a><br></li><li><br><a href="https://github.com/dylibso/chicory">Chicory on GitHub</a><br></li><li><br><a href="https://github.com/bytecodealliance/endive">Endive on GitHub</a><br></li><li><br><a href="https://endive.run/docs/">Endive documentation</a><br></li><li><br><a href="https://bytecodealliance.org">Bytecode Alliance</a><br></li><li><br><a href="https://openjdk.org/projects/detroit/">OpenJDK Project Detroit</a></li></ul><p><strong>Timestamps</strong><br>00:00 Introduction of topic and guests<br>00:56 What is WebAssembly?<br>03:35 Comparing the performance with JavaScript<br>05:45 JRuby already uses WebAssembly<br>09:04 JNI versus FFM API versus WebAssembly<br>13:58 Other Java-related tools that use WebAssembly<br>17:56 History of the Chicory and Endive projects to bring WebAssembly to Java<br>21:03 Projects of the Bytecode Alliance<br>22:02 The Endive project as the glue to bring WebAssembly tools to Java<br>23:30 Integration of the Redline compiler<br>28:59 Why this is the perfect solution to modernize existing Java applications<br>31:18 Is this approach performant?<br>32:24 What future changes in Java and the JVM will make this even better<br>35:04 How Endive can be used in AI development<br>37:28 What to expect in Endive<br>41:29 Conclusions</p>

Foojay.io | Friends of OpenJDK and Java Programming

Foojay.io | Java and Programming Community

The End of JNI Pain: How WebAssembly Is Quietly Replacing Native Libraries in Java (#98)

JUN 13, 202644 MIN
Foojay.io | Friends of OpenJDK and Java Programming

The End of JNI Pain: How WebAssembly Is Quietly Replacing Native Libraries in Java (#98)

JUN 13, 202644 MIN

Description

<p>WebAssembly is already running inside Java applications, but most developers just don&#39;t know it yet.</p><p>In this episode, Andrea Peruffo walks us through how WebAssembly is becoming the modern, safe alternative to JNI. Run Rust, C, and other native libraries directly on the JVM, without the crash risks, per-platform packaging headaches, or the observability blackhole that JNI creates.</p><p>From JRuby&#39;s Prism parser to SQLite and full Postgres running as pure Java bytecode, the use cases are real. And the project making it possible, Endive, under the Bytecode Alliance, is open and ready to explore.</p><p><strong>Guest</strong></p><p>Andrea Peruffo</p><ul><li>GitHub: <a href="https://github.com/andreaTP/" target="_blank" rel="noopener noreferer">https://github.com/andreaTP/</a></li><li>LinkedIn: <a href="https://www.linkedin.com/in/andrea-peruffo-32269178/" target="_blank" rel="noopener noreferer">https://www.linkedin.com/in/andrea-peruffo-32269178/</a></li><li>Bluesky: <a href="https://bsky.app/profile/andreatp.bsky.social" target="_blank" rel="noopener noreferer">https://bsky.app/profile/andreatp.bsky.social<br></a></li></ul><p><strong>Links</strong></p><ul><li><br><a href="https://foojay.io/today/a-new-generation-of-java-libraries-is-born-wasm-becomes-the-implementation-detail/">A New Generation of Java Libraries: Wasm Becomes the Implementation Detail</a><br></li><li><br><a href="https://github.com/dylibso/chicory">Chicory on GitHub</a><br></li><li><br><a href="https://github.com/bytecodealliance/endive">Endive on GitHub</a><br></li><li><br><a href="https://endive.run/docs/">Endive documentation</a><br></li><li><br><a href="https://bytecodealliance.org">Bytecode Alliance</a><br></li><li><br><a href="https://openjdk.org/projects/detroit/">OpenJDK Project Detroit</a></li></ul><p><strong>Timestamps</strong><br>00:00 Introduction of topic and guests<br>00:56 What is WebAssembly?<br>03:35 Comparing the performance with JavaScript<br>05:45 JRuby already uses WebAssembly<br>09:04 JNI versus FFM API versus WebAssembly<br>13:58 Other Java-related tools that use WebAssembly<br>17:56 History of the Chicory and Endive projects to bring WebAssembly to Java<br>21:03 Projects of the Bytecode Alliance<br>22:02 The Endive project as the glue to bring WebAssembly tools to Java<br>23:30 Integration of the Redline compiler<br>28:59 Why this is the perfect solution to modernize existing Java applications<br>31:18 Is this approach performant?<br>32:24 What future changes in Java and the JVM will make this even better<br>35:04 How Endive can be used in AI development<br>37:28 What to expect in Endive<br>41:29 Conclusions</p>