how many of you out there use and what about it do you find usefull or to be a headache.

I will be using it on a new system i was just picked up to support, the primary interface will be written in .NET languages but i will need to support some legacy stuff that will require Smalltalk.

So far (after some research) i have found that i am not much a fan of the syntax.

C# array:

string mystring = new string[] { "some string", "some string"  };

where as in smalltalk the syntax is something like

mystring ← #('data1' 'data2' 'data3');

other things that are quite odd, but i wont waste anyones time with it.

Looks like Smalltalk's syntax is nicer looking and more elegant.

no way


after reading up on some tutorials it is actually poorly written if you ask me.

| myFile myStream myLine addrIP mySet contents sFound eFound logDirectory | 
    Transcript clear.
    logDirectory := 'c:\vw7.4'. 
    contents := logDirectory asFilename directoryContents. 
    contents do: 
             [ :each | 
               sFound := each findString: 'ws00' startingAt: 1.
               eFound := each findString: '.log' startingAt: 7.
               (sFound > 0) & (eFound > 0)
               ifTrue:
               [ mySet := Set new. 
                 myFile := logDirectory asFilename construct: each.
                 myStream := myFile readStream. 
                 [ myStream atEnd ] whileFalse: 
                   [ myLine := myStream upTo: Character cr. 
                     addrIP := myLine copyUpTo: $,. 
                     mySet add: addrIP.
                   ]. 
                 myStream close.
                 Transcript show: each, '...', mySet size printString; cr.
               ].
             ].

there are quite a few things syntaticly (if thats even a word) speaking that write and work poorly.

Looks pretty straightforward. Just because an absurd compendium of redundant types and brackets is what you're used to looking at doesn't mean Smalltalk has a flawed syntax.

This article has been dead for over six months. Start a new discussion instead.