Scala is a general purpose programming language principally targeting the Java Virtual Machine. Designed to express common programming patterns in a concise, elegant, and type-safe way, it fuses both imperative and functional programming styles. Its key features are: statically typed; advanced ...
382
votes
18answers
45k views
Is the Scala 2.8 collections library a case of “the longest suicide note in history”? [closed]
First note the inflammatory subject title is a quotation made about the manifesto of a UK political party in the early 1980s. This question is subjective but it is a genuine question, I've made it CW ...
358
votes
6answers
76k views
Scala vs. Groovy vs. Clojure [on hold]
Can someone please explain the major differences between Scala, Groovy and Clojure. I know each of these compiles to run on the JVM but I'd like a simple comparison between them.
317
votes
11answers
30k views
How can a time function exist in functional programming?
I've to admit that I don't know much about functional programming. I read about it from here and there, and so came to know that in functional programming, a function returns the same output, for same ...
197
votes
22answers
51k views
Which is the best IDE for Scala development? [closed]
I like all three of the popular Java IDE's and all three have plug-ins for Scala. I'll probably try all three eventually, but since I'm totally new to the language I figured I'd ask which is the most ...
188
votes
14answers
33k views
Should I use Play or Lift for doing web development in Scala?
I'm stuck on whether I should focus on Play or Lift for doing web development in Scala.
Play looks very polished. The Scala-specific tutorial looks amazing. Furthermore, since I've been coding in ...
177
votes
10answers
36k views
Good use case for Akka
I have heard lots of raving about Akka framework (Java/Scala service platform), but so far have not seen many actual examples of use cases it would be good for. So I would be interested in hearing ...
161
votes
3answers
12k views
What does “coalgebra” mean in the context of programming?
I have heard the term "coalgebras" several times in functional programming and PLT circles, especially when the discussion is about objects, comonads, lenses, and such. Googling this term gives pages ...
158
votes
13answers
40k views
Looking for a comparison of Scala persistence frameworks [closed]
I would like to use Scala to persist data to a relational database, so what I am looking for are examples of CRUD operations using Scala.
I would like to code on a lower level of abstraction than ...
157
votes
8answers
42k views
Scala Programming for Android
I have followed the tutorial at Scala and Android with Scala 2.7.3 final. The resulting Android App works but even the most basic application takes several minutes (!) to compile and needs 900 kb ...
146
votes
10answers
29k views
Modern alternatives to Java [closed]
I have been a Java developer for 14 years and have written an enterprise-level (~500 kloc) Swing application that uses most of the standard library APIs. Recently, I have become disappointed with the ...
143
votes
8answers
18k views
How do I get around type erasure on Scala? Or, why can't I get the type parameter of my collections?
It's a sad fact of life on Scala that if you instantiate a List[Int], you can verify that your instance is a List, and you can verify that any individual element of it is an Int, but not that it is a ...
127
votes
6answers
25k views
Scala doesn't have enums - what to use instead of an enum
Scala doesn't have type-safe enums like Java has. If I have a set of related constants then what is the best way in Scala to represent those constants?
119
votes
8answers
303k views
How to use java.String.format?
I am trying to use a .format method of a string. But if I place %1, %2 etc in the string, java.util.UnknownFormatConversionException is thrown pointing to a confusing Java source code piece:
private ...
112
votes
15answers
11k views
What makes Scala's operator overloading “good”, but C++'s “bad”?
Operator overloading in C++ is considered by many to be A Bad Thing(tm), and a mistake not to be repeated in newer languages. Certainly, it was one feature specifically dropped when designing Java.
...
112
votes
18answers
39k views
What Scala web-frameworks are available?
I've just started learning Scala, and the first thing I'm going to implement is a tiny web application. I've been using Erlang for the last year to implement server-side software, but I've never wrote ...