filmov
tv
Introduction to JVM backend for Idris 2

Показать описание
JVM is a solid polyglot platform supporting multiple languages like Scala, Clojure, Kotlin with a vast set of libraries and plenty of research around GC, JIT and AOT compilation for performance. With Idris on the JVM, we get the best of both worlds. In this talk, I introduce the JVM bytecode backend for Idris 2. I show few examples demonstrating how various Idris constructs (data types, namespaces, functions, lambdas, constructors etc.) are compiled to JVM bytecode, how it handles tail calls, FFI for Java and FFI bindings for Idris library modules and an example project building Idris with Maven to use JVM libraries. I also talk about performance and next steps for the JVM backend.