6 ms·
Scala is an OO language with FP tacked on, so it basically defaults to "make everything a pain". It was easy to justify rewriting it again because it only took
by MustardTiger 10y ago
Scala is an OO language with FP tacked on, so it basically defaults to "make everything a pain". It was easy to justify rewriting it again because it only took two weeks to do it. A re-write is much faster than initially writing it, you're just copying yourself.
- premium-concern 10y agoI wonder why Haskell people feel so hurt about Scala... It's much closer to Haskell's capabilities than pretty much any other functional language. It has better type classes, the compiler just got type inference for partially applied type constructors, it supports programming with dependent types and implicit parameters allow you to let the compiler prove almost arbitrary things. If your definition of FP means "purity", you pretty much discarded all languages traditionally considered to be functional. There is nothing wrong with liking Haskell more than Scala, but I think your claims are not very well-founded.
- kmiroslav 10y ago> It has better type classes Haskell and Scala win and lose on different criteria but for type classes, I find Haskell's syntax and semantics infinitely more elegant, more terse and more flexible than Scala's. Defining type classes in Scala is a cacophony of syntax boiler plate riddled with implicits and brackets. Haskell is much more elegant in that area.
- premium-concern 10y agoScala's typeclasses are first-class values and they actually work as advertised. Haskell's type classes are a mess because Haskell-the-spec (anti-modular, coherent) and Haskell-the-language (incoherent, "modular") work completely different and nobody cares and there us no real fix because both options suck, as soon as your project consists of more than one module. It's the reason why no language after Haskell does type classes the Haskell way, and all of them do it similar to Scala's approach. Could Scala have more syntax sugar? Sure! But people are more focused on getting them right first, before adding additional syntax.
- MustardTiger 10y agoWhat on earth are you talking about? Tons of other languages do type classes "the haskell way". Which is also known as "type classes". Scala doesn't have type classes, it has a close approximation.
- codygman 10y agoWhat other languages do type classes like Haskell?
- MustardTiger 10y agoAll of them? Who else has broken almost like typeclasses other than scala?
- codygman 10y agoAll of the languages? Go doesn't have them. Neither does C.
- MustardTiger 10y agoObviously, all of the languages with type classes. Those languages do not have "type classes" like scala does, which is what I was replying to.
- premium-concern 10y agoSo basically what you are saying is "Haskell has Haskell's typeclasses!". That's a yuuuuge amount of languages that follow "Haskell"'s design! (Maybe you should start counting Haskell-to-X compilers separately to pad the number "1" a bit?)
- MustardTiger 10y agoPlease read the posting guidelines and contribute constructively or not at all.
- MustardTiger 10y agoI wonder why you assume I am a haskell person, why you assume I am "so hurt about scala", and mostly why even if those two absurd assumptions were true, that you could generalize that to "haskell people". I am obviously not a haskell person, or I would have just used haskell rather than trying scala first. I am not hurt about scala, it simply was much less productive than haskell. Scala is not remotely the closest to haskell. Not even the closest JVM language. And my "claims" are my personal experience, how can they not be "very well founded". You seem to be putting some emotional context into this that has nothing to do with me.