5 ms·
My problems with Scala: 1) src/main/scala/com/thingy/actualthingy JUST to get to the root of your code. 2) Recompiling/restarting is slow because liftweb and o
by phazmatis 13y ago
My problems with Scala:
1) src/main/scala/com/thingy/actualthingy JUST to get to the root of your code.
2) Recompiling/restarting is slow because liftweb and other frameworks are overly complex.
3) I'm 90% sure it would be possible to create a PRY-like debugging tool that runs your code in interpreted mode and drops you into the REPL at a certain point in your code. And yet, it'll never get built because Scala hackers are stuck in the halcyon java days of 1998.
4) Variable names first, types second = okay, now you're just being different for the sake of being different.
That said, it seems like if you use scala as a more concise java with some handy functional syntax thrown in, you can make something that isn't terrible for future maintainers.
- verticalpalette 13y agoAs for number 4, this is because many of the type annotations are optional.
- saryant 13y ago1) You don't have to do that, Scala doesn't enforce the folder/package hierarchy that Java does. Moreover, you can use any folder hierarchy you want. 2) Compiling Scala is slower than Java (sometimes much slower) but that's not the frameworks' fault. scalac is just slow, though getting better. 3) This does exist. In fact, it's built into the language. You can also use "sbt console" to load a REPL with your entire project in the classpath. 4) As the other reply said, type annotations aren't required. In that light, Scala's syntax for type annotations makes sense.
- seanmcdirmid 13y agoNumber 4 because...Pascal. This was actually a huge innovation over Algo's syntax back in...the late 1960s. I think Martin Odersky studied under Niklaus Wirth, so the lineage makes sense; I also think its better than the old early 60s Algo way of defining variables.
- nogridbag 13y ago>> a more concise java with some handy functional syntax thrown in Sounds like Kotlin.