4 ms·
It has only been out since November 2009, and it wasn't considered ready for production then. Maybe it is now, but it definitely hasn't had much time to be esta
by zephyrfalcon 16y ago
It has only been out since November 2009, and it wasn't considered ready for production then. Maybe it is now, but it definitely hasn't had much time to be establish a large user base.
- mrj 16y agoWell... Not so much. I'm playing with it, but apparently it doesn't yet fully run on Windows. I think that'll work for my project, but that would prevent most people from using Go.
- mhd 16y agoGo is in a "public beta" status, i.e. what you see right now is its development, not its refinement. It basically hasn't reached a 1.0 release version yet. Participants of the mailing list are very early adopters who write some libraries for it. It's still likely enough that important parts of the language spec will change in non-compatible ways, and especially the standard library still isn't too stable (e.g. the http module is a bit orphaned right now). But the progress is quite impressive, and it might hit a niche for lots of people (those Zed Shaw tends to call "longbeards"). Unix systems programming is still dominated by C, as there aren't that many valid alternatives. Java is systems programming for the Java system, C++ is C++. Ocaml is probably one step too far for bit pushers. And then there's the pedigree of the developers. I think within a year the language should have matured enough. If someone manages to come up with a "killer application" for it (c.f. RoR/Ruby or node.js/server-side Javascript), it might take off. It might also end up like Modula-3.
- xiongchiamiov 16y agoWhat about D?
- mhd 16y agoThat's a good question. D has been around for quite some time, has some well-known names (Bright, Alexandrescu), but has yet to break big. Compared to it, Go, a much more recent development, tends to do quite well (just my estimates, PL mindshare is a bit hard to measure). I think it's mostly because of some internal and positioning issues. I haven't been following it recently, but I remember some problems with different standard libraries, D 1 vs D 2, and three compilers that each had issues. Maybe that's resolved, but it certainly didn't make things look too good. Also, it seems to be more a successor to C++, which makes some people a bit distrustful. Yes, it's much cleaner, but also quite a bit more complex than C, and not a total programming environment as Java or C#. So it mainly gets its users from the C++ camp, which isn't the mightiest army nowadays (And whose Windows battalions aren't supported very well by D). Go is in the news a lot because of its Google and Unix (Pike, Thompson) heritage, because it's a bit simpler (more C crossed with Python than ++C++), and because it has some prominent concurrency support, which is close to the current hype (every emerging language has to prove its mettle there). By the way, don't read this as a value judgment. It's just a personal assessment why I think that Go is currently a bit more popular and will continue to be so.
- jbarham 16y agoAlthough D has been around for longer, it's worth out that the Go amd64 (aka x64) compiler is the most mature compiler in the Go compiler suite (ARM, x86, amd64) but AFAIK the D compiler is only available for 32-bit x86.
- sandGorgon 16y agoThere is also the Rust programming language being developed by Graydon Hoare(the Mozilla Tracemonkey compiler dude), Brendan Eich (the Javascript creator) and Dave Herman (of PLT Scheme - Racket ?) http://lambda-the-ultimate.org/node/4009 http://lambda-the-ultimate.org/node/4009 From the language faq : http://wiki.github.com/graydon/rust/language-faq http://wiki.github.com/graydon/rust/language-faq "Have you seen this Google language, Go? How does Rust compare? Yes. Rust development was several years underway before Go launched, no direct inspiration. Though Pike’s previous languages in the Go family (Newsqueak, Alef, Limbo) were influential, Go adopted semantics (safety and memory model) that are quite unsatisfactory. Shared mutable state. Global GC. Null pointers. No RAII or destructors. No type-parametric user code. There are a number of other fine coroutine / actor languages in development presently. It’s an area of focus across the PL community."
- enneff 16y agoGo is picking up traction with Real Companies doing Real Things. I can say that it's now being taken seriously within Google, and is being used for some production services there. I've also been in correspondence with one group at another company who have written close over 50k lines of Go code for their storage infrastructure. They're very happy with it. (Just rooting for a better garbage collector; it's coming.) Despite its familiar appearance, Go represents a different approach to programming in general. One that I find personally refreshing, and it seems to be catching on.