AOT to Native code just removes the JIT time. Any overhead of actually running the Java runtime and running initialization code is still there.
AOT already means something to clojurists. It means removing the extra runtime compilation phase of .clj into classfiles. The JIT is what the JVM does, which still occurs just like before.
Unless the bytecode gets translated to native code ahead of time (AOT).
Although OpenJDK/Oracle JVM don't offer this option, other vendors do.
What?!
Most of the Clojure app startup time (~1.2s on my machine) is the Clojure runtime, not the JVM (usually less than 100ms).