dleskov
Joined 16 years ago
Joined 16 years ago
Thanks for mentioning our product, but I have to make a few corrections:
First, the Excelsior JET Runtime license is sadly not GPL-compatible. Also, you cannot use it to target embedded systems, unless you buy Excelsior JET Embedded and pay royalties, though we are currently weighing the option to switch to OpenJDK to eliminate the latter.
Second, the Standard Edition is free even for commercial use (the above limitations apply).
Finally, other editions are available at no cost for use in public non-commercial projects. It does not matter whether the (software part of the) project is open source or not.
See https://www.excelsiorjet.com/free for details.
Overall, I would say that AOT suddenly becoming kosher helps our business way more than competition hurts it.
Then, "JDK9 has AOT out of the box" is a bit of exaggeration. Oracle AOT is only available for Linux/x64 ATM, yields huge binaries and may be a bit cumbersome to use: http://mjg123.github.io/2017/10/04/AppCDS-and-Clojure.html
The main difference however is that a binary produced by Oracle AOT is to a big extent just a pre-populated HotSpot cache, whereas Excelsior JET has been AOT-centric since day one. In practice that means that with Oracle AOT you have to ship both the native binary and the original class files to your customers, and with Excelsior JET you only ship the native binary, which makes reverse engineering your application more difficult.
I recall us being quite surprised when a customer survey had shown that IP protection is more important than application performance for many of our customers, even though it was just a byproduct of our optimization efforts.
Twitter: @dleskov