Many people in the Kotlin community are aware that JetBrains is doing something with Kotlin in embedded development via the Kotlin Native initiative (project?). When can the Kotlin community expect to find out more details about these plans? Would be good to see JetBrains providing more transparency on Kotlin’s long term plans.
Have JetBrains seriously considered consulting the Kotlin community on Kotlin in embedded development before progressing any further? Some members of the Kotlin community have some valuable embedded development experience that is highly likely to be relevant to what you are doing. I have a VERY valuable contact (Electrical Engineer) who has over 25 years of embedded development (in hardware and software) experience who may be available to act as a part time adviser to the Kotlin Native team.
First of all, we appreciate your concern and the offered help. I’ll explain a little.
- Yes, we are working on Kotlin Native, which is a compiler back-end (using LLVM) and runtime for compiling Kotlin programs to native code and running without a virtual machine.
- Kotlin Native is potentially relevant for at least the following platforms: iOS, embedded, WebAssembly, scripting (including games), scientific computing/data analysis.
- We don’t have a plan yet as for which of the areas above we are going to focus on fist.
The core technology required for all of the areas above is the same: compilation to native code, runtime (including memory management), core library. When we have a good sense of how the core turns out, we’ll decide on a specific area of focus, and then reach out to the world to consult about that area.
no desktop (Linux/macOS/Windows) ?
What exactly advantages do you expect to gain from writing a desktop application in Kotlin Native as opposed to the regular Kotlin for the JVM?
Smaller apps. No whiny users saying “omg it’s java”. Low overhead and simple way to consume of any C api, COM included. Simplified licensing of end product.
Performance not being priority unless horrible.
What should be third party licensing terms of kotlin? Will it allow sell kotlin based binary software embedded as part of device to distributor? IP, patents, copyrights situation? Facebook like agreement of auto license recall in case of any lawsuit? I guess you currently can’t provide them since actual platform is Java.
Even if Kotlin can move away from the Java Platform (JVM) there is the thorny issue of the ecosystem to take care of. Is it really worth it to dump the JVM ecosystem to target a different platform? Now if Kotlin could successfully target Web Assembly, and provide good interop with standard web APIs (incl web ecosystem) then it would be a VERY compelling (viable) web front-end alternative, which would deliver a devastating blow to Swift on the web side.
Swift is already having an extremely difficult time getting established on the web back-end side. Kotlin has already started to establish itself successfully considering the server side announcements that were made recently (eg Vert.x and Spring), and the language uptake in general (it isn’t all about Android).