We've been experimenting with this model too, as "write once, run anywhere" is very tempting for business logic, but those platforms have traditionally fallen down when it comes to UI and other native functions (e.g. alarms, sensors, etc). So far, it's proving very do-able. Non-trivial in some areas such as multi-threading, but a lot more practical than replicating the same logic across Android, iOS, and web.
Because I absolutely love Kotlin and I feel I'm much more productive with it. I have a hard time working with script languages and feel confident on my code nowadays.