parse / my.sig.net writes:

> But something struck me as odd.  One of the nicest things about 
> Smalltalk is that statements read like ordinary imperatival 
> sentences in English.  Instead of writing
> 
> 	object.doFoo(otherObject, thirdObject)
> 
> you can write
> 
> 	object doFooWith: otherObject andWith: thirdObject
> 
> using prepositions and not simply named parameters.

I believe that keyword parameters are due in a coming release of
Ruby. That'll give you most of the Smalltalk-like syntax, omitting only 
the pattern matching overload.

> The authors praise Ruby for having dropped this "non-standard" 
> syntax.

Actually, it wasn't really that part of Smalltalk we were talking
about. If was more things such as 1 + 2 * 3 => 9, and the sometimes
difficult to read ifTrue: stuff. (Although I personally find a[1]
clearer than a at: 1, but that's just what I'm used to).

> What Ruby does share with Smalltalk is the use of blocks.  I might 
> grow to like blocks, and I'm not denying it's a powerful feature.  
> But it is not a feature that lends itself to readable code.  I find 
> it much easier to quickly get my head around a Python statement like
> 
> 	for each item in myCollection

Of course in Ruby you can have the best of both worlds:

   myColleaction.each { ...}

or

   for item in myCollection
     ...
   end


> But maybe in six months I'll come round.

I'm betting 6 days ;-)


Dave