Никита Липский — Ahead-of-time компиляция

Ahead-of-time (AOT) компиляция, или статическая компиляция, существует для платформы .NET довольно давно, однако Java до сих пор не имеет стандартного AOT-компилятора. Некоторые программисты думают, что AOT-компилятор для Java может работать только для ограниченного подмножества Java приложений и не может быть применен в общем случае, другие думают, что AOT не нужен для Java, потому что есть JIT.

Правда же состоит в том, что у Java есть AOT-компилятор с 2000 года как часть Excelsior JET JVM, полностью совместимой с Java спецификацией. В этом докладе я попробую развеять мифы, которые сложились вокруг AOT-компиляции и показать, где (с технической точки зрения) этот подход имеет преимущества перед динамической компиляцией (JIT).

  1. Никита Липский
    Один из инициаторов и руководителей проекта Excelsior JET, сертифицированной реализации Java SE, разрабатываемой компанией Excelsior. Работая над проектом с 1997 года, поучаствовал в исследовании и разработке практически всех компонент продукта от ядра до продуктовых свойств. Также активно принимает участие в технической поддержке продукта. До проекта Excelsior JET, участвовал в разработке объектно-ориентированной базы данных и конструктора графических пользовательских интерфейсов Оберон-2 системы Мифрил (Kronos Research Group), а также объектно-ориентированных библиотек для языка Оберон-2 (XDS ltd.). @pjbooms