3 Predominant Themes in the Discussion
| Theme | Supporting Quotation |
|---|---|
| 1. Targeting JVM‑level performance | > "we're using it to optimize jank to compete with the JVM" – christophilus |
| 2. LLVM optimisation prospects & IR challenges | > "Clojure's dynamism is granted by a great deal of both polymorphism and indirection, but this means LLVM has very few optimisation opportunities when it's dealing with the LLVM IR from jank." – mccoyb > "The runtime max function will itself be inlined, so that's something LLVM ... is still doing" – codebje |
| 3. Dynamism vs. recompilation & language design questions | > "once a function has been inlined, you can no longer update the definition of that function in the REPL and have that update the behaviour of functions which use it, unless you recompile those as well." – lemming > "The natural question is why doesn't Jank use MLIR?" – thfuran |
These three themes capture the community’s focus on performance goals, the technical nuances of how Jank interacts with LLVM, and the trade‑offs between dynamic development and compiled execution.