4 ms·
I can't tell if it's intentional but your post borders on fanboyism given about 80% of what you listed there is either already available for / possible in Go or
by laumars 8y ago
I can't tell if it's intentional but your post borders on fanboyism given about 80% of what you listed there is either already available for / possible in Go or is a Java specific term so naturally Go would have it's own mature libraries out there under a different name. For example
* JDBC, Akka, etc
There as all Java specific technologies but that doesn't mean that Go (nor any other language) doesn't have their own libraries to do the same. I mean you're not going to call Go's database libraries "Java Database Connectivity" are you
* PDF generation libraries, Office/LibreOffice manipulation libraries, CMS platforms,
Go already has all that
* a phone OS,
There isn't any phone OS's written in Java either. There are phone OS's that use Java as their preferred application runtime environment - such as Android - and many of them can and do support running Go binaries as well. There is in fact a lot of documentation online regarding running Go on Android.
---
I'll grant you that Go doesn't have hot code replacement nor generics but the former is a pretty niche case for Java development that wouldn't really improve Go's current workflow anyway - and the latter is such an tired old argument that you're not going to win any debates by pointing it out.
Disclaimer: I've programmed in both Java and Go (as well as more than a dozen other languages too). So I'm about as agnostic as they come when it comes to evaluating programming languages.
- pjmlp 8y agoSo where are the Go drivers offering 1:1 feature parity with JDBC for Oracle, DB2, SQL Server, Informix....? An example for cluster based distributed framework similar to Akka in features? What Go libraries provide feature parity to PDFJava, iText or POI? Which Go CMS is comparable in features to Literay, Adobe Experience Manager? Where is Go listed here? https://developer.android.com/guide/platform https://developer.android.com/guide/platform
- laumars 8y ago> So where are the Go drivers offering 1:1 feature parity with JDBC for Oracle, DB2, SQL Server, Informix....? > > An example for cluster based distributed framework similar to Akka in features? > What Go libraries provide feature parity to PDFJava, iText or POI? > Which Go CMS is comparable in features to Literay, Adobe Experience Manager? Clearly I'm not going to waste my entire afternoon doing research for you just to win some internet points. Particularly when you're just going to find some other "irrefutable fact" to lord over Go thus making any sensible discussion pointless. Actually I'm going to agree with you on one thing: while Go does support all of the above I'm sure there will be some specific edge cases that are available in a Java library - eg PDFJava - that isn't available in an equivalent Go library. However I'm also confident I could list of some edge cases that are covered by Go and not Java. Anyone with the slightest bit of level headedness would agree that you're not going to get 1:1 feature parity with every competing library in competing languages because different developers will prioritise different features. So you accomplish nothing by making such an argument in the first place. > Where is Go listed here? > https://developer.android.com/guide/platform https://developer.android.com/guide/platform Why would it be listed there when Go doesn't target libc nor the JVM? That page also doesn't list about dozen other languages nor frameworks that also support Android.
- pjmlp 8y agoThe point was that Go is supposedly an excellent Java replacement, yet it's ecosystem is found lacking in comparable libraries. As for Android, the whole userspace and a big part of Treble drivers are written in Java, which was exactly the point of being a phone OS written in Java. So excellent replacement for Java? Not really.
- laumars 8y agoA sane person would have read that as "excellent replacement for Java for many typical use cases" rather than "a drop in replacement for Java for any and all use cases" Sure the GP didn't categorically set a context boundary but it's a pretty reasonable to assume he intended it to be read that way given we're all supposed to be intelligent people. > As for Android, the whole userspace and a big part of Treble drivers are written in Java, which was exactly the point of being a phone OS written in Java. The whole userspace isn't written in Java. Yes there is also an accompanying Java userspace but your exaggerated argument is ignoring the GNU components as well as native C++ parts too (which, as it happens, are also represented in the very link you posted).
- pjmlp 8y ago> The entire feature-set of the Android OS is available to you through APIs written in the Java language. Ah so Linux is not written in C, because there are some Assembly components there I guess. What GNU components? The only GPL stuff surviving on Android is the Linux kernel.
- laumars 8y ago> Ah so Linux is not written in C, because there are some Assembly components there I guess. Oh do please stop exaggerating things. It's abundantly clear that I wasn't arguing the irrelevance of Java in Android. You simply said "phone OS written in Java" and I was making the point that Android wasn't exclusively written in Java, thus Go (amongst other languages) can and do still run on Android. Given the context was about whether x can run on y, it's very relevant if y was written exclusively in x, w or v. Also I don't understand why you've taken such a personal offence to Go but this entire argument of yours has been really petty. You have your tools you like and the GP has theirs. Does the GPs tools really need "death by a thousand paper cuts" to make yours tools look more important? Clearly it doesn't because Java is proven technology. So why waste your time criticising everyone else's tools? > What GNU components? The only GPL stuff surviving on Android is the Linux kernel. Quick Google suggests you might be right there however that wasn't the case last time I did dev work on Android. Even so, the NDK still exists.