Live data from Hacker News

Kotlin is now Google’s preferred language for Android app development

techcrunch.com

71–80 of 99 posts

Re: Kotlin is now Google’s preferred language for Android app development

#71

Earlier quoted context omitted.

Yep. Swift is open-source and pretty decent. Google should clean house and go with the language that would attract the most developers.

Swift doesn't work natively on Windows which is a massive downer for many people.

Cygwin could be an option.

Re: Kotlin is now Google’s preferred language for Android app development

#72
post #9

...great, Kotlin for Android, Dart for Flutter, on the ML side they're starting to adopt Swift, for networking infra code Go. What the heck is with this "tower of babel"?! Are other people not bothered by the overlapping features of all these languages? At this point I thin most would prefer a slightly-frankensteinian monster-language that you'd get by taking either Kotlin or Swift and bolting all the other features…

It's only from a very high-level view that these languages might look all the same. If you look at how the languages actually evolved, there are crucial differences. Swift basically exists due to Apple's need for Objective C compatibility. What other language would serve that need? Similarly, Kotlin was easy to adopt for Android due to Java compatibility. Rust is designed to interoperate well with C++, which is usefu…

> Rust is designed to interoperate well with C++, which is useful within Firefox.

Mild nitpick, but from my understanding Rust interoperates well with C but is quite a pain to interoperate with C++. At least calling C++ libraries from Rust is painful, the other way around can be easy in the same way that calling C code is easy from C++.

Re: Kotlin is now Google’s preferred language for Android app development

#73
post #61

Earlier quoted context omitted.

This is nothing new. People were constantly introducing new languages back in the 1990s too. Of your preferred languages, Rust and Typescript are fairly new. They are among the success stories of this tower of Babel. There's a constant churn of replacing and improving languages. Nobody is using Algol, Pascal or Smalltalk anymore, and even COBOL is losing ground. (Only Lisp and C seem to survive everything.) There's a…

> Kotlin is rising in popularity because it's turning out to be the better Java that Groovy and Scala weren't. I'd say Kotlin is rising in popularity mainly because it's a Java alternative backed up by Google.

Backing by Google has helped, but I honestly think the two main reasons its succeeding are the same two reasons Typescript is succeeding: A "better" language that's "pragmmatic". What i mean is, they both provide the features people want (types, inference, less verbose than Java) and have quality out of the box tooling (because Jetbrains and vs-code). The moment I saw and tested either, I knew they would be a smashing success because they solved the problems people wanted solved, and "just worked".

Re: Kotlin is now Google’s preferred language for Android app development

#74
post #62

Earlier quoted context omitted.

Without the " tower of babel " that exists you wouldn't get Rust or TypeScript, D, Swift or Julia. Given that you mentioned them, I'm assuming you have some preference for them. So the world you'd live in would be a world in which your preferred languages wouldn't exist. I guess that would be fine for some people, but not me or people like me. So there you have your answer.

You could get all the features of Rust by just taking features from an ML-family language and adding some low level memory manipulation capabilities, plus the theoretical work on lifetimes and all. It wouldn't "look like C" but it would be the same things. You could get to any modern dynamic optionally typed language by just starting from Common Lisp, dropping the s-expressions and macros, and replacing default datat…

I don't know if any language can exist solely as repackaged knowledge. Sure, a language can very well start that way, but you now have n features that need to be integrated with each other in a still unknown way, which brings new challenges and new knowledge. And no language is static and no technique is completely generic, so any complex software will have issues that will need custom solutions that will again lead to the creation of new knowledge.

For example Julia didn't invent multiple dispatch, but it's intention to use it to high performance numeric computing meant different constraints from Dylan or CL, which led to the creation of it's own unique paradigm around type specialization and promotion to make it work. But eventually people had troubles with extremely complex dispatch rules, so, thanks to the language also having repackaged the Lisp knowledge in itself, the language designers were able to create a unique macro to make dispatch rules turing complete (generated functions). And then people realized it could be used for source to source manipulation, for example in the state of the art ML project Zygote.

You'll certainly find many examples like that in any minimally ambitious language.

Re: Kotlin is now Google’s preferred language for Android app development

#75
post #9

...great, Kotlin for Android, Dart for Flutter, on the ML side they're starting to adopt Swift, for networking infra code Go. What the heck is with this "tower of babel"?! Are other people not bothered by the overlapping features of all these languages? At this point I thin most would prefer a slightly-frankensteinian monster-language that you'd get by taking either Kotlin or Swift and bolting all the other features…

> "tower of babel" The hallmark of a fragmented corporation, with internal competition between divisions.

Which, if you're the size of Google, is probably the way you want it. At least then great new ideas have a chance to survive when they threaten the current product line.

Re: Kotlin is now Google’s preferred language for Android app development

#76
post #61

Earlier quoted context omitted.

This is nothing new. People were constantly introducing new languages back in the 1990s too. Of your preferred languages, Rust and Typescript are fairly new. They are among the success stories of this tower of Babel. There's a constant churn of replacing and improving languages. Nobody is using Algol, Pascal or Smalltalk anymore, and even COBOL is losing ground. (Only Lisp and C seem to survive everything.) There's a…

> Kotlin is rising in popularity because it's turning out to be the better Java that Groovy and Scala weren't. I'd say Kotlin is rising in popularity mainly because it's a Java alternative backed up by Google.

I think the rebranding of Intellij IDEA as Android Studio in 2013 was a good clue of where Google's long term plans were pointed.

Re: Kotlin is now Google’s preferred language for Android app development

#77
post #9

...great, Kotlin for Android, Dart for Flutter, on the ML side they're starting to adopt Swift, for networking infra code Go. What the heck is with this "tower of babel"?! Are other people not bothered by the overlapping features of all these languages? At this point I thin most would prefer a slightly-frankensteinian monster-language that you'd get by taking either Kotlin or Swift and bolting all the other features…

This debate can get out of hand, but the Android eco system and its developers will benefit immensely if Swift is adopted instead of Kotlin - it enables devs to share code.

Re: Kotlin is now Google’s preferred language for Android app development

#78

Earlier quoted context omitted.

The languages are quite different though and there are good reasons for using different ones in different places: 1. Kotlin is basically modern Java, and is therefore an obvious choice for Android which still runs everything in a JVM. 2. Go was basically designed to run network services and it is very good at it. The standard library is excellent (probably the best of any language) and concurrency is pretty easy too.…

To what extend, is Swift being used for ML or DL by Google or others? Is it a new TensorFlow core? Or just just another binding?

It's an alternative interface for Tensorflow (the existing one is Python). The core of Tensorflow is still written in C++.

Re: Kotlin is now Google’s preferred language for Android app development

#79

Earlier quoted context omitted.

Yep. Swift is open-source and pretty decent. Google should clean house and go with the language that would attract the most developers.

Swift doesn't work natively on Windows which is a massive downer for many people.

It doesn't yet, but good progress has been made recently on that front: https://forums.swift.org/t/swift-windows/22458

Re: Kotlin is now Google’s preferred language for Android app development

#80
post #9

...great, Kotlin for Android, Dart for Flutter, on the ML side they're starting to adopt Swift, for networking infra code Go. What the heck is with this "tower of babel"?! Are other people not bothered by the overlapping features of all these languages? At this point I thin most would prefer a slightly-frankensteinian monster-language that you'd get by taking either Kotlin or Swift and bolting all the other features…

Okay, let's go to 1989 and apply this mentality.

Three languages to suffice all needs:

* Low-level systems language: C.

* Highly expressive, high-performance industrial language: C++.

* Interactive interpreted language for doing easy casual things: Basic! Everybody knows Basic already.

Halt the language research, stop trying to develop Python, Lua, Java, OCaml, Haskell, Smalltalk, etc. Who ever needs them?

In plain words: diversity is how evolution works. You cannot build a perfect thing from the start (no, not even Lisp, apparently). You have to try and reality-check. Standardizing on One True Tech is how you end up with reams of despicable legacy code 15 years later, and with no way out.

Post reply on HN