My turn to surprise you then, because I agree with pretty much everything
you say below.

Yes, Scala is versatile and scalable. It covers functional and OO
programming. It has pattern matching, implicits, support for DSL's and a
powerful type system.

Now, can you see how all these features combined in one language can make
such a language complicated?

-- 
Cédric



On Sun, Aug 29, 2010 at 12:29 PM, Kevin Wright <[email protected]>wrote:

> I'm goin to surprise you now, and come out in total whole-hearted
> agreement.
> You have rather elegantly captured one of Scala's core philosophies.
>
>
> The subset of Scala to which you refer is, in fact Scala itself.  The name
> of the language is a reduction of "Scalable", which applies on a number of
> levels.  One such is that it can be used for programming "in the small"
> (Kojo, scripts, etc.) as well as programming "in the large" (polymorphism,
> dependency injection, etc.).
>
> Another interpretation of being "scalable" is that Scala can be used for
> conceptually simple work, possibly aided by a DSL (as with Kojo), or it can
> be used for building a large, rich, and arguably complex framework such as
> lift, or scalaz.
>
>
> What most Scala developers have now come to appreciate is that using a
> library or DSL is often a trivial matter, and that the more advanced you
> make it, the easier it becomes to use.  When programming in Scala, you
> really do tend to work in one of two distinct modes: producer and consumer.
>
>
> One of Scala's biggest problems now is that most examples online are
> written by people wanting to demonstrate their competence, and this is often
> done by leveraging the full power of the language.  What we need now are far
> more examples of Scala in normal use :)
>
>
> On 29 August 2010 20:10, Fabrizio Giudici 
> <[email protected]>wrote:
>
>>
>> -----BEGIN PGP SIGNED MESSAGE-----
>> Hash: SHA1
>>
>> On 8/29/10 20:32 , Kevin Wright wrote:
>> >
>> >
>> > ... bottom line is that using Kojo and reading the Kojo doc teaches
>> > you nothing about Scala.
>> >
>> >
>> >
>> > and this is the fundamental point of disagreement.
>> >
>> > Actually, it not only teaches you some Scala, but also come of the
>> > Java API as well:
>> >
>> http://wiki.kogics.net/forum/t-229555/another-example-with-sq-and-dist-methods
>> >
>> I
>> >
>> must say I'm pretty much with Cedric. But indeed it's not that
>> Cedric and others are right and Kevin and others are wrong. You're
>> mostly discussing on different things. I've read the pdf about Kojo.
>> Pretty neat. Indeed the DSL capabilities of Scala are a great thing,
>> pretty neat and powerful, and I regret that Java can't do that much
>> more than closures.
>>
>> Given that, I think that the only correct statements that can be done are:
>>
>> 1. Students using Kojo are learning a subset of Scala. So it's not
>> wrong that they are not learning Scala. But it's a subset. For
>> instance, I don't see any trace of "pattern matching" in the whole PDF
>> document.
>> 2. I think we can assume they are enjoying Kojo
>> 3. Surely, since they are using a subset of Scala they could be pushed
>> to learn more of Scala. Kojo is a pretty smart idea to evangelize
>> Scala, indeed.
>>
>> I think that we can all agree on these three points.
>>
>> Now, there's some implicit inferencing by Kevin: that those students
>> that will go on expanding their knowledge of Scala will keep on liking
>> it as they expand their knowledge of it. Consider this example:
>> playing chess. I'm able to play chess in the sense that as I child I
>> learned the basic rules (how the different pieces move). This is a
>> subset of the game domain. Further parts of the game domain are
>> strategies to win. Indeed "playing chess" does include at least some
>> level of strategy - serious players will poo poo at you if you only
>> can move pieces (and indeed, I don't think that I can really say "I
>> can play chess"). I was saying that I can't deal with chess
>> strategies: It's not the kind of thing that I've fun with: too
>> cerebral. I really can't improve there. Thus, the fact that I found
>> easy and even amusing to learn the basics of a thing did not imply
>> that I liked the whole of it.
>>
>> Of course, I'm not asserting that all students will _not_ enjoy Scala
>> as they learn more of it. That's why I'm not saying that Kevin is
>> wrong. Give me a proof of that, and I'll believe that. If I understand
>> well, nobody has got yet enough statistics to figure out, right? We'll
>> wait and see. Personally, I think that only a minority of students
>> will still enjoy keep on learning Scala - perhaps even Kevin, in his
>> subconscious, as in his previous post he wrote "the more advanced
>> students". :-)
>>
>> This objection of mine is perfectly coherent with my judgment of Scala
>> being "powerful" and "complex". This means that if you only use a
>> subset of Scala, you might be satisfied by the reduced power that you
>> get, and you're not facing with all the complexity. In fact, I seem to
>> have said in the past that I'd be curious to see a stripped down
>> version of Scala.
>>
>>
>> - --
>> Fabrizio Giudici - Java Architect, Project Manager
>> Tidalwave s.a.s. - "We make Java work. Everywhere."
>> java.net/blog/fabriziogiudici - www.tidalwave.it/people
>> [email protected]
>> -----BEGIN PGP SIGNATURE-----
>> Version: GnuPG/MacGPG2 v2.0.14 (Darwin)
>> Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/
>>
>> iEYEARECAAYFAkx6sMMACgkQeDweFqgUGxfUQQCgkDD/qvES9PFzT67+/S5OStbE
>> TkkAn0UVeaYLiE64HxPXIC4ilKy5w93f
>> =H/1M
>> -----END PGP SIGNATURE-----
>>
>> --
>> 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]<javaposse%[email protected]>
>> .
>> For more options, visit this group at
>> http://groups.google.com/group/javaposse?hl=en.
>>
>>
>
>
> --
> Kevin Wright
>
> mail/google talk: [email protected]
> wave: [email protected]
> skype: kev.lee.wright
> twitter: @thecoda
>
>  --
> 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]<javaposse%[email protected]>
> .
> For more options, visit this group at
> http://groups.google.com/group/javaposse?hl=en.
>



-- 
Cédric

-- 
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