Aiui folk who love Perl tend to have a natural affinity for Scala. Stevan Little (the Moose and P5 MOP guy) chose Scala for Moe and I'm pretty sure he enjoyed it.
I'm in to P6. ionforce, please indulge/educate me:
> {Scala|P6 is} a very expressive language that does not sacrifice on power (JVM/type safety).
I hope you see where I'm coming from and are willing to play ball. :)
First and foremost, P6 is incomplete, immature, slow, etc. and almost no one is using it to do anything serious. Aiui Scala is used in a wide range of production settings. This is likely the end of any comparison for most folk.
Scala runs on the JVM. Aiui there's no attempt or intent to run it on anything else. Rakudo (P6) runs on the JVM. It also runs on other VMs including MoarVM. See http://moarvm.org
Scala can "seamlessly" call Java code and vice-versa. Rakudo/JVM can call Java code, but it's currently ugly looking. Java code should be able to call P6 code using Rakudo/JVM but the necessary work isn't complete.
Aiui Scala has solid concurrency and parallelism features. P6 has a good story regarding the language's design as it relates to concurrency and parallelism, but implementation only began last year. See http://jnthn.net/papers/2014-nlpw-reactive.pdf for some of the best Rakudo currently has to offer concurrency-wise.
Scala does type inferencing and you can add explicit types. Its type hierarchy is Java's. P6 also does type inferencing with optional explicit types. But it's type hierarchy is not the same as Java's.
Scala has traits, pattern matching, and higher order functions. So does Rakudo.
> But no, I'm not bitter. =)
Of course not. There's more than one way to do it. :)
Aiui folk who love Perl tend to have a natural affinity for Scala. Stevan Little (the Moose and P5 MOP guy) chose Scala for Moe and I'm pretty sure he enjoyed it.
I'm in to P6. ionforce, please indulge/educate me:
> {Scala|P6 is} a very expressive language that does not sacrifice on power (JVM/type safety).
I hope you see where I'm coming from and are willing to play ball. :)
First and foremost, P6 is incomplete, immature, slow, etc. and almost no one is using it to do anything serious. Aiui Scala is used in a wide range of production settings. This is likely the end of any comparison for most folk.
Scala runs on the JVM. Aiui there's no attempt or intent to run it on anything else. Rakudo (P6) runs on the JVM. It also runs on other VMs including MoarVM. See http://moarvm.org
Scala can "seamlessly" call Java code and vice-versa. Rakudo/JVM can call Java code, but it's currently ugly looking. Java code should be able to call P6 code using Rakudo/JVM but the necessary work isn't complete.
Aiui Scala has solid concurrency and parallelism features. P6 has a good story regarding the language's design as it relates to concurrency and parallelism, but implementation only began last year. See http://jnthn.net/papers/2014-nlpw-reactive.pdf for some of the best Rakudo currently has to offer concurrency-wise.
Scala does type inferencing and you can add explicit types. Its type hierarchy is Java's. P6 also does type inferencing with optional explicit types. But it's type hierarchy is not the same as Java's.
Scala has traits, pattern matching, and higher order functions. So does Rakudo.
> But no, I'm not bitter. =)
Of course not. There's more than one way to do it. :)