There's a fundamental difference between writing a library and
consuming a library.  My point was two-fold:
1. People say Scala is complex, but the actual examples that attempt
to prove this complexity are rare.  Features that support *writing*
DSLs are often used as those examples.  I've done a fair amount of
Scala development.  I have yet to write a DSL.
2. Capabilities that currently exist in Java are simpler in their
Scala equivalent

I never said you can't *use* a library that uses DSLs.  Actors are a
DSL, and they come with the core scala-library.  Certainly use them!

I won't be able to use Java 7 for probably 4 more years.  I can't even
use Java 6 yet because I have to remain compatible with a Java 5 JRE.
Lombok could give me easier data classes but wouldn't allow me to use
them in pattern matches.  Google's collection library is great, and
Lombok sounds pretty good, too.  But I think that was slightly
tangential to my argument.  I was discussing the content of the blog
post and not really saying that everyone should switch over to Scala,
only that it's worth a serious look.

Finally, the whole "drastic as switching to an entirely new language"
argument doesn't hold much water with me.  Learning the language is a
one time thing.  Learning each new library's API or framework,
regardless of the language, is a continual thing and we never question
that!  I write software in Java, SQL, a proprietary scripting
language, Batch scripting, JavaScript, Visual Basic, C++, XSLT while
also interfacing with RTF and XSL-FO.  Nevermind the frameworks and
other libraries I have to use and the real-world challenges I have to
solve using these technologies.  Adding Scala to the mix is nothin'.

On Sep 15, 10:42 pm, Reinier Zwitserloot <[email protected]> wrote:
> This argumentation of "If you don't like the DSL stuff don't use it"
> isn't convincing, at least not for me.
>
> You can't just throw out half of a language. I have to look at code
> written by others. I want to use libraries that say "for Scala" (or
> even: "For JVM"). I don't want to wait for a library that says "For
> Scala, and, oh, we don't use those particular features you didn't
> like". That doesn't scale in a world where code is shared between more
> than 1 developer.
>
> Also, if you want accurate equals, hashCode, getters, and setters,
> then, use Project Lombok. Strings in Switch will be coming in the now
> accelerated JDK7 (It's one of the features already completed). Use
> guava for a nice collections library. The few places where scala does
> significantly more type inference than java are either rarely
> applicable, actively disliked (in my experience) by those who would
> like to "throw out the DSL stuff", or it's inference of generics in
> variable assignments, which is also coming in JDK7 (diamond operator
> is also finished and won't have to wait for 8). That's most of the
> features on that list covered already, without having to do anything
> as drastic as switching to an entirely new language.
>
> If you're going to go with scala, go whole hog. I don't see the point
> of using scala as a java with slightly more cleaned up syntax. It's
> not worth the trouble of switching if that's all you're going to do.
>
> On Sep 16, 5:12 am, Sean Griffin <[email protected]> wrote:
>
>
>
> > Ok, it wasn't my intention to change the subject...not sure how that
> > happened.  Also, I think I was incorrect about setters on case
> > classes...not sure you can actually do that.  It's been a few months
> > since I've actually programmed in it.  I just review everyone else's
> > code these days...

-- 
You received this message because you are subscribed to the Google Groups "The 
Java Posse" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/javaposse?hl=en.

Reply via email to