Live data from Hacker News

The Road to Scala 3

scala-lang.org

61–70 of 196 posts

Re: The Road to Scala 3

#61

Earlier quoted context omitted.

proof is in the pudding on that one, sorry don't think there are academics studying this but it's an obvious outcome from the war that was Go/Scala/Node. Go is eating Scalas lunch because its easy to understand and communities are stronger than individuals. Sure Scala has more 'features' but Rob Pike would say every feature has a cost and you need to weigh that, didn't see that ever happen in Scala. Go is taking the…

Another commenter points out that Go has Google backing it, which is a significant confounding factor in terms of figuring out how good it is on its own merits. I’ll add to this and say that Go is a language that is very well-suited for Google’s issues. Namely, take a bunch of engineers with a particular area of familiarity (e.g. familiarity with C and/or Java) and throw them at code, scaling up by number-of-engineer…

Sorry those just aren't legitimate analogies. As I mention before every feature has a cost, Go is highly concerned with how those costs impact the community. In doing so they have created a language thats highly maintainable and efficient. Even at small companies there is turnover and you being 'really smart' with some abstraction has an impact, I've seen this plenty first hand.

Re: The Road to Scala 3

#62
post #44

Earlier quoted context omitted.

They look at how their software is being used and the problems people are encountering using it and then decide what is the best path. To roughly quote Rob Pike 'every feature is useful, but they all have a cost, and its about weighing the outcomes'

That’s precisely the issue imo: it’s a language carefully designed to meet Google’s requirements. The whole “we don’t need generics” fiasco was hilarious, though.

Its actually not designed to meet Googles requirements, that just something people who don't know Go say. They have a survey they put out every year and take feedback from customers on issues that arise. They try and fix those issues with as little code as possible, because code and features have a cost.

Re: The Road to Scala 3

#64
Scala is dead for anything that isn't academic. They didn't listen to their customers and ultimately burnt them. Every company I know that was using Scala is running pretty much running any other direction now. It was an interesting experiment I guess.

Re: The Road to Scala 3

#65
I love Scala, it has a nicely advance static type system, supports functional programming and has even macros, although they are a bit messy. Something I miss in go and python. Go's type system is way to simple and python is dynamic, which I think is unnecessary these days. Static type systems can be as expressive as dynamic ones. It has interesting libraries, like cats, shapeless, breeze. And it is popular in the big data field.

Re: The Road to Scala 3

#66
post #12

Earlier quoted context omitted.

Yes. Very well. https://www.clojure.org/reference/java_interop

Interested but how much as good as with kotlin? Being compatible is one thing, being as idiomatic is another.

Nowhere near as good or as seamless as Kotlin interop, Kotlin made interop a priority/first class feature.

When using a Java library in Clojure, many times its just better to just write some Java for your Clojure program specifically for the purpose of calling it from Clojure.

Re: The Road to Scala 3

#67
post #4

Earlier quoted context omitted.

> Scala is declining And the proof of this is... Where?

I'll speak for myself. I just jumped ship from a Scala team and took a pay hit to get out because it was so horrible. No one on the team had a strong command of the language, which made it worse. The application was a ball of mud. The week I left, proposals to rewrite everything in Java were heard. I took a position on a Go team and am much happier.

I wouldn't jump ship to a Go project, but I am currently in the situation you fled from. Even the core team who started the project doesn't have command of the language. I have some experience with rust and Haskell (hobby) and JVM experience with Java and clojure so I can get by but it is not pleasant.

I think the situation is similar to c++ where too many features have been added over time.

While with c++ there is a body of compiled recommendations on what not to use and how to write c++, for scala that doesn't really exist.

Re: The Road to Scala 3

#68
post #9

The problem with scala is that the docs were too late to come. Those who put them out are geniuses (props Cats ppl, ZIO too) - but it seems it is now too late. You know there’s irony that alot of the earlier docs were based on haskell books, too. Its not the math. Look at haskell’s freenode presense vs scala’s. Scala’s a 6th of haskell. What haskell had over scala is docs and community. Scala was just too late, and m…

The problem with scala is that academic goals sometimes don't align too well with "industry needs".

That's a complete myth, really. The Scala ecosystem has its fair share of problems, but Odersky and his lab's involvement and stewardship have never been one of them.

Re: The Road to Scala 3

#69

Earlier quoted context omitted.

I appreciate you taking the courage to share your honest thoughts despite how they may conflict with the views of others here. My heart goes out to the people I overhear at work, the ones who are struggling the most, lamenting and complaining that tool X (In this case scala) is “so” embarrassingly awful and, with the implication that it’s to blame for their poor performance. That sentiment resembles some of the comme…

Not every language has to be for every person. It's perfectly fine that people enjoy Scala. I think a lot of the negativity about Scala is because lots of companies went in hard on Scala less because of the merits of Scala, and more because Java had such a long period of stagnation.

This is very true

Re: The Road to Scala 3

#70
post #45

The way I look at modern Scala is a mix of Python and Java. Do it badly, and you end up with the unmaintainability of Python and the clunkiness of Java. Awful. Do it well, and you end up with the convenience and interactivity of Python and the typesafety, performance, and toolability of Java. This lets you implement your code quickly the first time, and have it run blazing fast on a hot JVM, with the compiler having…

use several of your libs in production code for this reason - simple, type safe stuff. perfect example of scala's flexibility. you can write simple/clean stuff in Scala it just takes discipline.

scala is a lot like perl, a powerful tool in the right hands, but gives you more rope to hang yourself if you dont know what youre doing

Post reply on HN