I'm leaning towards Go but Rust is very interesting.
I'm leaning towards Go but Rust is very interesting.
Rust, on the other hand, takes a lot of cues from Haskell/ML and is actually a very well designed language with lots of cool features like a hindley-milner based type system with strong generic support, pattern matching, strong support for immutable and functional programming styles, etc.
Of course not, but web services are the only thing that I think Go is much good for.
>And nobody is forcing you to use just one tool for all your jobs.
Does that mean I'm not allowed to talk about which tools I think are good for what?
Hope that helps.
Not really as it lacks the expressive power of the said languages.
And if one is looking for execution speed there are alternatives like Cython, PyPy, JRuby and RubyMotion.
For the OP question, if he values a mordern 21st century language, Rust is the way to go, even at pre 1.0.
I personally don't find Go to be that interesting, but the number of Ruby and Python people who are making re move and are happy with it indicates that I'm an oddball.
In my point of view, Go is system oriented, concurrency builtin, compiled, lots-of-braces, few syntax features. It's like the opposite of Python and Ruby.
I would compare Go with Vala, Java and C#.
Exactly. Many people are running into issues with Ruby and Python that Go solves. Tons of Ruby and Python programmers are flocking to Go.
It's not better because it's the same, it's better because it's different.
No they aren't. If they were you would be seeing "tons" of job ads or blog posts. I've seen hardly any.
I don't think so. Go has its own set of pros/cons just like every other platform. You could equally argue that the huge array of libraries for Ruby and Python would make it "better". And ActiveRecord or Rails alone are major advantages of the Ruby platform.
Personally I see Go being more like Java 1.0. Simple and elegant.
"Clearly X is better than Y" don't do anything except incite flame wars. You can remedy the situation by explaining and showing in what areas it is better or explain what your experience of seeing the benefits are. Just leaving at "X is better than Y obviously..." that usually doesn't end well.
That is why I asked you why it was better, even thought you already answered it 3 times, because it was another chance to explain why it was better.
Really, it's all anecdata. To be clear, when I say "better," (not "clearly better" as you quoted) I mean "I see lots of people re-writing their Ruby/Python code in Go, and they're very happy with the results." Here's the most recent story I remember: https://news.ycombinator.com/item?id=7628472
Well, that's because they haven't been following the discussion, on HN and on startup circles, going on for a while.
For one, Go creators' themselves said they expected Go to attract more C++/Java people, but instead they got more Python/Ruby people. And that's like 2 years ago.
For the past year or so, there have been numerous posts about how this or that project/startup switched from Ruby/Python to Go. Last 2 weeks alone there have been around 5 such posts on the front page of Hacker News (Digital Ocean being the latest).
Go is getting increasingly used by people that were doing infastructure/backend work in Python/Ruby etc, e.g people using stuff like Twisted and Tornado, JSON services, etc.
>That is why I asked you why it was better, even thought you already answered it 3 times, because it was another chance to explain why it was better.
Well, I guess he pre-supposed people are already familiar with all the "we rewrote our system in Go and we now have X times better performance, no more gimmicks to get async, etc".
June 25, 2012: http://commandcenter.blogspot.com.br/2012/06/less-is-exponen...
A lot of the rewrites I've seen done in Go, could probably have been done in C. The thing is, for lots of problems, Go is a better C than C. You can bolt on lots of safety features on top of C, and I think you could probably be very productive and safe in C if you forgot a lot of the dangerous features that C turns "on by default". It is for example possible to use Pascal strings in C.
I don't think the comparison with Vala (or Nimrod) is too far off -- but the Go team has lots of experience with language and system design -- and I think that really helps Go be a productive tool.
Most of the projects I come across for Go are for things that traditionally have been in Ruby/Python's camp. Examples of these are web infrastructure and command-line stuff.
Rust, on the other hand, seems like its being used more for things that have been done in C++. i.e. rendering engines and operating systems.
The comment author never stated that Go is better than Ruby/Python. The author points out that a lot of Ruby/Python people have switching over to Go... seemingly more than to Rust.
This isn't a statement for or against either projects worth.