Kotlin/Native: между LLVM и VM

На данный момент существует огромное разнообразие компиляторов, как статических, так и динамических, реализованных с помощью различных технологий. Уже никого не удивляет наличие для языка одновременно и JIT, и AOT компилятора. Для создания в особенности последних все чаще используется LLVM — отличное open-source решение, позволяющее достаточно просто разрабатывать компилятор с поддержкой множества различных процессорных архитектур. Однако при всех своих достоинствах LLVM, конечно же, не технология, решающая все проблемы, возникающие при реализации языков программирования. Это в большой степени касается высокоуровневых языков с автоматическим управлением памятью, таких как Kotlin.

В данном докладе посмотрим, как реализован статический компилятор для языка, который изначально разрабатывался как один из JVM-языков, как происходит кодогенерация с помощью LLVM и почему Kotlin/Native все же необходимо иметь свои собственные механизмы GC, RTTI и интероперабельности с C и Objective-C.


Елена Лепилкина,

JetBrains
Kotlin/Native: между LLVM и VM
Елена Лепилкина,
JetBrains
На данный момент существует огромное разнообразие компиляторов, как статических, так и динамических, реализованных с помощью различных технологий. Уже никого не удивляет наличие для языка одновременно и JIT, и AOT компилятора. Для создания в особенности последних все чаще используется LLVM — отличное open-source решение, позволяющее достаточно просто разрабатывать компилятор с поддержкой множества различных процессорных архитектур. Однако при всех своих достоинствах LLVM, конечно же, не технология, решающая все проблемы, возникающие при реализации языков программирования. Это в большой степени касается высокоуровневых языков с автоматическим управлением памятью, таких как Kotlin.

В данном докладе посмотрим, как реализован статический компилятор для языка, который изначально разрабатывался как один из JVM-языков, как происходит кодогенерация с помощью LLVM и почему Kotlin/Native все же необходимо иметь свои собственные механизмы GC, RTTI и интероперабельности с C и Objective-C.
О докладчике
О докладчике
Software developer в Kotlin/Native (JetBrains)
Другие спикеры
Другие спикеры
Показать ещё
Click to order
Total: 
Пришлём подтверждение оплаты на указанную почту в течение 30 минут
Имя
Фамилия
Компания
Должность
E-mail
Оплачивая участие, вы соглашаетесь на обработку персональных данных и с условиями пользования сайтом