From Java to Kotlin and Back Again
<i>&quot;Kotlin changed the extends keyword into the : operator, which is already used to separate variable name from its type. Back to C++ syntax? For me it’s confusing.&quot;</i><p>Not only C++; C# also. It&#x27;s not very hard to confuse the author, is it :) I understand it&#x27;s different from Java he&#x27;s used to, but that doesn&#x27;t mean one can hold every such difference against Kotlin. Not being Java isn&#x27;t in and of itself a fault of a language.<p>Why is &quot;:&quot; problematic exactly? It&#x27;s more concise. It&#x27;s true that this gives &quot;:&quot; more than one meaning, but it&#x27;s so clearly context-dependent I can&#x27;t really see how it could cause confusion when coding. An example would help.<p>(Ruby uses &quot;&lt;&quot; to denote class inheritance - by some miracle Ruby devs manage to get over the fact that &quot;&lt;&quot; is also an arithmetic operator :) )