Kotlin er det relativt nye programmeringsspråket som flere spår at vil erstatte Java som det primære språket for app-utvikling til Android. Men språket har flere bruksområder enn dette.
Det er Jetbrains som står bak Kotlin, etter at et av selskapets utviklerteam skapte språket i 2011. Selskapet er ellers mest kjent for å lage utviklerverktøy.
Programvare skrevet i Kotlin kjøres i utgangspunktet i den samme virtuelle maskinen som Java-basert programvare, altså JVM (Java Virtual Machine) eller tilsvarende. Men nå har det skjedd en utvikling som frigjør Kotlin fra JVM.
Leste du denne? Dette er programmeringsspråkene utviklere hater mest
Systemspesifikk
Nylig introduserte Jetbrains det som kalles for Kotlin/Native, en teknologi som gjør det mulig å kompilere Kotlin-kode til systemspesifikk programvare som kan kjøres uten noen virtuell maskin.
Dette er gjort mulig ved hjelp av en LLVM-basert (Low Level Virtual Machine) «backend» til Kotlin-kompilatoren og systemspesifikke implementeringer av runtime-biblioteket til Kotlin.
Dette gjør det mulig å bruke Kotlin til å programmere programvare som kan kjøres på Windows, Linux, Macos, Ios, Android og nettlesere i form av Webassembly.
Med dette kan Kotlin bli et alternativ til mange andre språk, kanskje til og med C/C++ i en del tilfeller. Kotlin/Native kan allerede samhandle med C-biblioteker.
IDE
Det er vel og bra, men en kompilatorløsning er ikke nok for at utviklere skal ta det i bruk. Derfor kom Jetbrains for noen få dager siden med en betautgave av andre utviklerverktøy for Kotlin/Native.
Mens Kotlin til nå har vært støttet av utviklerverktøyet Intellij IDEA, integreres Kotlin/Native langt mer med teknologier for systemspesifikk utvikling. Derfor har Jetbrains valgt å tilby Kotlin/Native-støtte i selskapets integrerte utviklermiljø (IDE) for C og C++, CLion.
Det er den nyeste betautgaven av CLion, 2017.3, som støtter dette, etter at man har installert plugins for Kotlin og Kotlin/Native.
I utgangspunktet er IDE-støtten for Kotlin i CLion den samme som i IntelliJ IDEA, men i tillegg skal det tilbys en debugger basert på LLDB og et eget testrammeverk for Kotlin/Native. På litt lenger sikt loves det også blant annet full interoperabilitet med systemspesifikke biblioteker.
Les også: Android får offisiell støtte for et tredje programmeringsspråk