Strange missing infix operators

While I agree with you there is a simple and good explanation for that. Kotlin decided to have java interop as one of the primary features. This is important because Kotlin tries to fight for the same platforms java does (js and native came later). Without java compatibility kotlin could never be seriously used for android and it also allows for a wide group of other jvm projects to switch to kotlin. This is one of the main reasons Kotlin is as popular as it is. It’s a great language but it also allows to easily switch to it.
As for Kotlin JS and Native, native is still experimental and JS was only released in Kotlin 1.2 I believe. This should explain why those platforms are not as influential as the jvm in regard to kotlins design.

There was a post about this:

Also I guess the KEEP for unsigned types might be interesting as well: