News for hackers. Stuff that matters.
Re:Technology Change: .Net to Scala by pkolaczk on Friday October 25, 2013 @07:43AM (#6610960)
The design approaches for Scala and F# are different though: F# is mostly FP with some OO tackled on - mainly influenced by OCaml. Scala unifies both OO and FP.

> If you know f#, you practically know Scala - well, enough to be instantly productive.

Sure, but actually you can say the same about knowing Java/C# and then moving to Scala. But in that case you're missing a whole lot of features that Scala offers that F# does not: typeclasses, traits, implicits, etc.

Re:Technology Change: .Net to Scala by balakk on Friday October 25, 2013 @07:59AM (#6611015)
True. I was referring to similarities in things like higher-order functions, tail-recursion support, pattern matching, option types and so on.

I feel the intersection of FP features between F# and Scala is much greater than C#/Java.

Re:Technology Change: .Net to Scala by CmonDev on Friday October 25, 2013 @09:14AM (#6611353)
"F# is mostly FP with some OO tackled on - mainly influenced by OCaml. Scala unifies both OO and FP"

So Scala is mostly OO with some FP tackled on?

Re:Technology Change: .Net to Scala by tel on Friday October 25, 2013 @09:23AM (#6611394)
In my understanding, it's hard to say. It appears to have a base semantics that you can think through as OO-like message passing or FP-like lambda calculus reduction. I assume it's implemented OO-style on the JVM, but it's hard to say whether the core language biases one side or the other.

I think that's interesting but also a big indicator of why you see such a big split-brain situation in Scala. FPers program FP-Scala, OOers program OO-Scala, but neither is dominating. As far as I can tell, Martin Odersky programs balanced OO-FP, but few others do.

Re:Technology Change: .Net to Scala by andrewcooke on Friday October 25, 2013 @11:24AM (#6612149)
scala is the unholy child of everything from oo and everything from fp (well, almost).

(but i found it hard enough to program in ocaml, which is similar to f#, because i was always torn between oo and fp parts, so maybe i am biased or just Too Dumb For Scala)