In particular, I was wondering about the Application Class-Data Sharing section of the announcement, since we had a number of posts here and on blogs talking about reducing Clojure’s startup time. If I recall correctly, a good chunk of the startup time is being used by the class loader.
The article mentions that
[…] JVM does a lot of magic when it’s loading a class. JVM parses the class, stores it into an internal structure, performs some checks on it, resolve and link the symbols, etc. […] So, when we have a shared archive which contains pre-processed classes, it can then be memory-mapped at runtime. As a result, it can reduce startup time, and memory footprint if multiple JVMs share the same archive file.
Is there something here that could be utilized to ameliorate this (arguably major) pain point?
Edit: Looking at the article again, I noticed that it says “Episode 1” – perhaps this thread could be kept alive for further announcements, should they have any relevance