1. Скачиваем релиз, распаковываем.
  2. Запускаем kotlinc-native -help:
Error occurred during initialization of VM
Could not reserve enough space for 3145728KB object heap
  1. Офигеваем от того, что этой штуке нужно 3 гига, запускаем с ограничением:
_JAVA_OPTIONS="-Xmx256M" kotlinc-native -help
  1. Делаем 1.kt с чем-то похожим на котлиновский код:
fun main() {
  println("https://t.me/minutkaprosvescheniya/120")
}
  1. Пробуем скомпилировать:
_JAVA_OPTIONS="-Xmx256M" kotlinc-native 1.kt -o 1
  1. Офигеваем от того, что надо скачать “немного” зависимостей — 600 мегабайт (в 2000-х за такое расстреляли бы).
  2. Офигеваем от того, что виртуалка у нас немного старая, i386, и kotlin-native поддерживается для arm32, win x86, watchOs x86, wasm32, MIPS, умных часов, но не для linux 32-bit, мол никому не надо — тебе надо, ты и делай.
  3. Повторяем шаги 1-6 для компа поновее.
  4. Офигеваем от того, что нельзя никак убрать расширение .kexe, потому что “это хороший способ идентифицировать файлы”.
  5. Запускаем ./1.kexe, получаем результат.
  6. Продолжаем офигевать от зрелости технологии.