[self-interest] Our two weapons are fear and surprise...and..

Steve Dekorte steve at dekorte.com
Thu Aug 6 19:37:33 UTC 2009

On 2009-08-06, at 6:46 AM, Niko Schwarz wrote:
> A smalltalk loop like
> #(1 2 3 4) do: [:el | Transcript show: el]
> needs the reader and programmer to understand two separate things.
> What a loop is, AND what a block is.

> Now you may say that I could just ignore the block magic and treat the
> syntax as magic, just like Java folks do. But Smalltalk won't let me.
> Blocks are built deep into the system, and you need to grasp them to
> get your head around to why the bevy of different iterators you will
> come across works.

Other languages have "blocks of code" which enclose the area within  
loops and conditions, have locals and access to the external scope and  
are basically the same thing except that they can't be passed by  

One of the two languages mentioned that was supposed to be simpler was  
"Perl". Do you really think that someone can learn Perl (get their  
head around the bevy of different semantic and syntactical constructs  
they will come across) faster than Smalltalk?

I know people that programmed in Perl for years and couldn't make  
heads or tails out of their own code when coming back to it after 6  
months. I've never heard of this happening with Smalltalk.

It seems to me that the difference is that Perl is ubiquitous, so when  
people have such problems, they assume it's their fault and not that  
of the tool - just as MS Windows users do.

- Steve

More information about the Self-interest mailing list