3. Kotlin team
Одна команда
● распределённая: Петербург - Мюнхен - Новосибирск - Бостон
● с общей точкой взаимодействия - standup meetings
● в которую входят все: compiler frontend & backends, tooling, QA etc.
● language design by meetings
7. Про совместимость с Kotlin JVM
Код с явными зависимостями от Java работать не будет
8. Про совместимость с Kotlin JVM
● Неявные зависимости от JVM?
○ Any.equals, Any.hashCode, object identity
○ Управление памятью
○ Обработка циклов из ссылок
● Kotlin Core
9. Про совместимость с Kotlin JVM
● Кое-что хотим сделать лучше, чем в (Kotlin) JVM
● Вы можете нам помочь
10. Поддерживаемые платформы
LLVM bitcode
● Linux (x86, amd64, ARMv7, ARMv8), macOS, iOS, Android
● Модули распространяются в виде биткода с дополнительной
метаинформацией и линкуются статически
12. Автоматическое управление памятью
● Reference counting
● Гранулярность - логические группы объектов (например, memory arenas)
● Thread locality на уровне языка
17. Статус
● Транслятор на Kotlin JVM с использованием native interop
○ Пишется на Kotlin
○ Backend к основному компилятору Kotlin
○ Генерирует LLVM-биткод с помощью вызовов LLVM C API через native interop
● Рантайм и стандартная библиотека
○ Пишутся на Kotlin Native и C++
○ Собираются в биткод
● Работают простые программы, включая каноничный “Hello, world!”