Registered: Jun, 2005
Re: JetBrains' Dmitry Jemerov on IntelliJ 8, Flex, and Scala
Posted: Jun 4, 2008 10:49 AM
> No need for misdirected aggression; I was clearly stating
> my opinion (e.g. "To me..."), and I clearly indicated that
> I've only read about it and made toy programs in it.
I apologize if I sounded aggressive; it wasn't my intention :)
> I guarantee, however, that some of the problems in C++
> won't haunt Scala programs. Wild pointers, odd memory
> errors and the like. As for complexities and misuse of
> the language (such as template metaprogramming), I doubt
> scala could rise to those painful "heights". I concur
> with one of the other poster -- In my 7 years of C++
> programming, there were various dark areas of the language
> I still didn't know and wouldn't go near. As for getting
> first timers started in C++ (which happened occasionally
> when we brought in graduates), don't get me started.
It's true that some C++ problems won't appear in Scala, but you might get all kinds of different problems. Java was supposed to eliminate lots of problems that C++ programmers have to deal with (pointers , memory issues), but if you look at those user groups there are other types of problems they complain about. The same will probably happen with Scala, it's just that the language is not being seriously used (yet).
> Enough about me: what's your experience with C++ and Scala
> in large projects?
I don't have any experience with Scala - I just read the tutorial on their web site and I also liked what I saw there but, as I said above, I really don't know what would it be like to use Scala on a large project. I mostly use C++ and my experience with it seems to be quite different than yours. Specifically, we built a quite extensive C++ framework to use for our applications and I see very few pointer and memory problems. I admit, though, that our framework does not use template metaprogramming which, I agree, can get nasty. As always, there's more than one way to accomplish the same thing, so it all depends on the kind of C++ code we get to deal with, which ultimately affects our perception of the language.