I am looking for alternatives or competitors to Scala strictly in regards to programming desktop apps on multiple cores. Whether using CPU or GPU cores (ScalaCL), I want to take advantage of all possible multi-threading performance. Scala is definitely a good choice, but I want to know what other options I can pursue. Running on the JVM is key for what I need.
Asked
Active
Viewed 412 times
1

Tomasz Nurkiewicz
- 334,321
- 69
- 703
- 674

smuggledPancakes
- 9,881
- 20
- 74
- 113
-
2you've dismissed java? if that's the case, I'm curious what is it about scala that you'd prefer over vanilla java (with regards to multi-core utilisation) – Toby Sep 14 '11 at 15:02
-
2I believe that anything that can be done in Scala is doable in Java, but Scala makes it much simpler to multi-thread. That is what I am looking for, features that simplify multi-threading. I believe Scala has lots of features to say for example, take a for loop and make it run on as many threads as possible. – smuggledPancakes Sep 14 '11 at 15:06
-
Desktop apps mulyicores. That sounds vague. Can you specify your problem further? Have you looked at actors and at STM? – AndreasScheinert Sep 14 '11 at 15:20
3 Answers
7
Clojure is a JVM language designed for concurrency, see: http://clojure.org/concurrent_programming

Kevin
- 24,871
- 19
- 102
- 158
3
You could always use Java with one of the "concurrency" libraries that provide Actor frameworks, STM etc. One that springs to mind is akka (http://akka.io/).
There's also the jCUDA http://www.jcuda.org/ library which might help with your requirement for GPU processing.

Paul Cager
- 1,910
- 14
- 21
1
If you like Groovy, you can also check out GPars, which offers Actors as well as Dataflow models.

Chochos
- 5,155
- 22
- 27