Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

I am totally one of these ravers.

Go is the right language for the right time: easy enough for the Python people (like me) to pick up quickly, but with a concurrency model that makes taking advantage of multi-core very easy.

Anyone prefer Scala to Go?



>Anyone prefer Scala to Go?

Yes, very much so. I love being able to keep so much of the state in the type system, freeing my attention for more important things; it also (ironically?) lets me write much more dynamic-feeling code by using "typeclasses" to supply varying implementations for an operation. I don't realise how much I depend on it until I try to go back to other languages. Go has some useful standard types and a good story in place for some other generic type use cases, but if you need a (generic) type that the language designers didn't think of (and e.g. even Option is missing), you're stuffed.


Yes. Not sure how much I feel like talking about generics and error handling again, but those are the first two reasons. I can respect them wanting error conditions to be explicit, but then they give you no acceptable way of dealing with them -- perhaps because proven techniques from the functional world would require parametric polymorphism, or yet more built-ins from the language designers.


Absolutely. Each time I try to move away from Scala, I always notice the lack of functional features in most other languages + a type system that's as strong as Scala's. Most importantly, with Akka([1]) you have an awesome concurrency framework that comes with lots of features out of the box. However, for many client-side applications, Go's lack of the JVM is a huge plus...

[1] http://akka.io


Its hard to accept that Scala + Akka is something similar to what Go has going, one just seems so heavy and the other so light. Probably FUD.


Go is awesome, and I'd love an excuse to use it in production. The problem is that being a young language, there aren't many libraries, and the ones that do exist are often at very early stages at best too. That means when you need a library to solve problems like printing a PDF, you are out of luck.

The other thing that makes me a bit nervous about using it in production is the idea of linking to the latest/head version of a dependency. Maybe I just don't properly understand the paradigm though.

Those nits aside, I believe Go has bright future and within 2 years will be mainstream. Meanwhile, Scala is better suited for projects that need lots of libraries and mature tooling.


> The problem is that being a young language, there aren't many libraries.

The Go standard library is large, there are many libraries on code.google and github. I feel like this statement would have been more accurate a year ago. My job is almost 100% Go based development and at this point, I have no issues finding libraries when I need them.


I choose Scala over Go but I don't think I would be doing system programming with Scala.

I'd choose Ada or Rust over Go.

For concurrency I'd choose Erlang or Rust over Go.

If it's Node.js or Go. I guess I'll choose Go.


+100 for Scala.

You can pry the super powerful type system, functional programming support, monad comprehensions, library ecosystem, IDE support from my cold dead hands :D


Alright, Scala has been added to my list.


We're very happy using Scala. I have a mild interest in Go, but Scala def. first choice.


>Anyone prefer Scala to Go?

Yes, by a huge margin. I rank my preferences like so:

derp languages (go lives here) < scala < ocaml/F# < haskell

But that doesn't make it clear how huge the distance is between the derps and scala.




Consider applying for YC's Summer 2026 batch! Applications are open till May 4

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: