3 ms·
I've spent some time with both Haskell and Scala. Haskell's big pluses are purity and rigor. Most functions can't affect external state; they can only return r
by johan_larson 10y ago
I've spent some time with both Haskell and Scala.
Haskell's big pluses are purity and rigor. Most functions can't affect external state; they can only return results. Haskell also has strict typing, which is great for catching mistakes up front, and takes most of the pain out of using it through really great type inference. Unfortunately the community around Haskell is very small, so if you use it for a project larger than one person you could run into hiring problems.
I wrote some more about the pluses and minuses of Haskell here:
http://short-sharp.blogspot.ca/2016/06/should-you-use-haskell-for-new-project.html http://short-sharp.blogspot.ca/2016/06/should-you-use-haskel...
Scala's big advantage is that it works well with legacy code in Java. Unfortunately it straddles the boundary of OO and FP, and making both programming models work requires a large and complicated language. I'd prefer something simpler.
If we were to take another swing at FP, I'd look hard at Scheme and in particular at the Racket system. The big plus of Scheme is a certain elegance, which is very appealing. And lots of people have learned Scheme in school.
- spawarotti 10y agoI'd prefer something simpler. Consider Kotlin: https://kotlinlang.org/docs/reference/comparison-to-scala.html https://kotlinlang.org/docs/reference/comparison-to-scala.ht...
- idobai 10y agoKotlin isn't an "advanced programming language" - it's a remastered java.