10 ms·
> There are magnitudes more libraries and resources available for Python/Ruby/JS/Java Those languages have been out longer. I think Go will get there. EDIT: c
by fixxer 13y ago
> There are magnitudes more libraries and resources available for Python/Ruby/JS/Java
Those languages have been out longer. I think Go will get there.
EDIT: cgo dramatically expands the libraries. I hear a lot of people say "Go doesn't have X", but if X is already implemented in C (assuming some conditions are met), then you need not reinvent the wheel. I've been using Go as a concurrent parent over C functions for my geospatial research... really nice fit when you need to do 100 gigs worth of XYZ coordinate transforms.
- dvt 13y agoI guess my extended argument is -- okay, so Go will get there eventually (I'll concede that) -- but then what? IMO, Go will still not be attractive enough to warrant a major migration. cgo is interesting, but we already have a Java analog - the JNI.
- freyr 13y ago> Go will still not be attractive enough to warrant a major migration One of pron's concessions above is that Go is much easier to learn. That could be its killer feature: a new generation of developers and founders may choose to use Go for their projects because of the lower barrier to entry. A common theme with these write-ups is that the developer felt comfortable with Go after about a week. That's pretty incredible. I had the same experience. Coming from a scientific computing background, I wanted to get my feet wet with a an application level or system level language. I chose Go, and I felt like I was off and running in about a week. I've since looked at Java, and I'd rather not get involved with it unless absolutely necessary. If that turns out to be the experience of many others, it won't be a matter of migration. It'll be a matter of growth from the ground level.
- pron 13y agoThat is a good point, and it just might be that way, but I'm not so sure for several reasons. First, languages like Python and Ruby (and I think Clojure, too) are as easy to learn and Go, and most would say are more productive. And if you want a system level language, then you're probably not a beginner. Yes, Go is easier to learn than Java, but certainly not by much (it is, granted, much easier to get a small program running in Go). On the other hand, Java (or Kotlin) are more versatile. Someone once said that easy always wins, and this might be the case with a system level language, too, but maybe when people specifically look for power then easy is not their top priority? I don't know.
- Domenic_S 13y ago> Those languages have been out longer. I think Go will get there. Maybe so, but that doesn't help today.
- fixxer 13y agoWhat exactly is Go missing for you?
- pron 13y ago> I think Go will get there. Possibly, but the language has very little to add over the incumbents. I think many Python programmers are attracted to Go because it's easy and so much faster than Python. But for veteran Java programmers, Go feels like a handicapped Java. I will admit that it's probably faster to write a short Go program than a Java one. But on the JVM I'd use Clojure for short-and-sweet stuff anyway, and use Java when I need the big guns.
- discreteevent 13y agoWould you consider Scala for any use case?
- pron 13y agoNot personally, but only because I really don't like Scala. Some would say it has many use-cases. Scala is a chameleon of a language, which some may consider a strength. I think it makes Scala a non-language: a wonderful compiler, but zero coherence and a level of complexity which few organizations will tolerate in a language. My guess is that most Scala users simply like it as a better Java, and Kotlin does a better job at that. Kotlin is what Scala should have been (and wanted to be) before it was overcome with a desire to prove that a compiler can do all sorts of crazy stuff. It's hard for me to understand what problem Scala is trying to solve (other than the challenge of writing a compiler with lots and lots of features), but whatever it is, the language is constantly becoming harder to understand, so its mysterious goal should better be really good. So, for me, Kotlin is the true Scala. Problem is, Kotlin is very, very young, and it's way too early to tell if it will ever take off.
- happy_dino 13y ago> what Scala should have been (and wanted to be) before it > was overcome with a desire to prove that a compiler can > do all sorts of crazy stuff. It's hard for me to > understand what problem Scala is trying to solve (other > than the challenge of writing a compiler with lots and > lots of features), but whatever it is, the language is > constantly becoming harder to understand, so its > mysterious goal should better be really good. This is a bit hard to follow ... I'd love to see some examples.