На данный момент существует огромное разнообразие компиляторов, как статических, так и динамических, реализованных с помощью различных технологий. Уже никого не удивляет наличие для языка одновременно и JIT, и AOT компилятора. Для создания в особенности последних все чаще используется LLVM — отличное open-source решение, позволяющее достаточно просто разрабатывать компилятор с поддержкой множества различных процессорных архитектур. Однако при всех своих достоинствах LLVM, конечно же, не технология, решающая все проблемы, возникающие при реализации языков программирования. Это в большой степени касается высокоуровневых языков с автоматическим управлением памятью, таких как Kotlin.
В данном докладе посмотрим, как реализован статический компилятор для языка, который изначально разрабатывался как один из JVM-языков, как происходит кодогенерация с помощью LLVM и почему Kotlin/Native все же необходимо иметь свои собственные механизмы GC, RTTI и интероперабельности с C и Objective-C.
4,230 views
12
1
4 months ago 00:09:54 5
Video by Лента новостей Владивостока
6 months ago 02:28:09 82
Иван Углянский. Отечественная Excelsior JET Java Runtime. Подкаст Битовые маски
10 months ago 00:00:00 1
Зимняя школа “Программирование для RISC-V“ | Лекторий | День 2
3 years ago 00:04:43 4
П.И.Чайковский “Размышление“
3 years ago 01:00:21 4.9K
Елена Лепилкина - Kotlin/Native: между LLVM и VM
5 years ago 00:29:33 29
Kotlin/Native. Next step on the way to Kotlin multiplatform projects (Елена Лепилкина)