SDCast

SDCast #98: в гостях Олег Шелаев, девелопер адвокат проекта GraalVM в команде OracleLabs

02.18.2019 - By Konstantin BurkalevPlay

Download our free app to listen on your phone

Download on the App StoreGet it on Google Play

Мечтали ли вы когда-нибудь о такой платформе, где можно легко вызывать функции и модули, написанные на одном языке прямо в программе, написанной на другом языке? Сказка, не правда ли? А вот и нет! Есть такой проект, GraalVM, одной из идей которого как раз и является полиглот интероп платформа. В этом выпуске у меня в гостях Олег Шелаев, девелопер адвокат проекта GraalVM в команде OracleLabs, организатор VirtualJUG и митапов GDG Tartu. И в этом выпуске мы конечно же говорим про GraalVM.

GraalVM — высокоэффективная универсальная виртуальная машина для разных языков программирования, поддерживающая многие популярные языки: Java, Kotlin, Scala, JavaScript, Python, Ruby, R и даже С и С++ и им подобные. GraalVM стирает рамки между языками программирования и позволяет интероп прямо в рантайме,. Так же, интересной особенностью GraalVM является способность компилировать JVM bytecode в машинный код ahead-of-time, создавая standalone образы обычных Java-программ, которые не зависят от JVM.

Вначале Олег рассказал про историю зарождения проекта, как и когда всё начиналось, и что как живёт проект сейчас. Далее мы обсудили архитектуру и внутреннее устройство проекта, из каких компонентов и модулей он состоит, на каких языках и технологиях построен.

Отдельно поговорили про компилятор Graal и ahead-of-time (AOT) компиляцию, плюсы и минусы такого подхода, ограничения и эффективность. Олег рассказал про специальную виртуальную машину SubstrateVM, чем она отличается от прочих JVM и какие дополнительные задачи решает.

Обсудили мы также и общие вопросы жизни проекта: Олег рассказал про команду, распределение ролей и задач, взаимодействие с сообществом и планы по дальнейшему развитию проекта, а так же рассказал про реальные проекты и компании, которые используют GraalVM целиком или какие-либо отдельные компоненты системы.

Ссылки на ресурсы по темам выпуска:

* GraalVM (http://www.graalvm.org/). Основной сайт проекта

* github.com/oracle/graal (http://github.com/oracle/graal) — главный репозиторий проекта

* graalvm-demos (https://github.com/graalvm/graalvm-demos) — репозиторий с демками на разных языках

* Блог команды GraalVM (https://medium.com/graalvm)

* Хороший вводный доклад про GraalVM с Devoxx'18 «Deep dive into using GraalVM for Java and JavaScript developers by Oleg Šelajev, Thomas Wuerthinger (https://www.youtube.com/watch?v=a-XEZobXspo&feature=youtu.be)»

* И ещё один доклад с Devoxx'18 «GraalVM: Run Programs Faster Anywhere by Oleg Šelajev, Thomas Wuerthinger (https://www.youtube.com/watch?v=50JxcnvJjMQ&feature=youtu.be)»

* Видео доклада Олега “Fast startup for Java apps with GraalVM” (https://www.youtube.com/watch?v=HC8uoEX8B5A)

Понравился выпуск? — Поддержи подкаст на patreon.com/KSDaemon (https://www.patreon.com/KSDaemon) а так же ретвитом, постом и просто рассказом друзьям!

More episodes from SDCast