Как мы пытались внедрить GraalVM и немного приуныли Язык/тулинг

Доклад принят в программу конференции
Роман Гребенников
Findify

Разработчик распределенных систем в компании Findify. Прошел тернистый путь от дизайнера-неудачника до C++ => Java => Scala-программиста, в процессе защитив диссертацию. Любит все распределенное и отказоустойчивое.

email: grv@dfdx.me
twitter: @public_void_grv
Тезисы

О GraalVM не слышал только ленивый: новые оптимизации, интеграция с Python/Ruby/JS и AOT-компиляция в нативный код. На любой JVM-конференции из каждого утюга рассказывают, как изменится наша жизнь к лучшему с приходом коммунизма^W этой технологии. Но вот о чем обычно не рассказывают — так это об ограничениях и особенностях этой технологии, с которыми вы наверняка столкнетесь, если попытаетесь пойти хоть немного дальше hello-world.

В этом докладе мы попытаемся выяснить, ради чего это может понадобиться на практике и какие проблемы могут возникнуть при попытке протащить GraalVM в свой scala-проект:
* AOT-компиляция не компилирует;
* АОТ-компиляция таки иногда компилирует, но код почему-то тормозит;
* Reflection не рефлексирует;
* в тридесятой транзитивной зависимости нашелся хитрый неподдерживаемый MethodHandle;
* у вас Akka.

Фреймворки
,
Scala
,
Оптимизация производительности

Другие доклады секции Язык/тулинг