Squeak practical use?

Andrew C. Greenberg werdna at mucow.com
Mon Jan 28 12:42:44 UTC 2002


De gustibus non disputandum est.  Latin for, "its best not to feed a 
troll."  Nevertheless, I dissent.

The decoupling of Squeak from the OS is, for my practical work, a 
practical benefit.  I use Squeak to prototype applications and games 
that I can build cross-platform without effort.  At the time I picked up 
Squeak, I was trying to use Python for precisely that purpose, and 
Squeak won hands down.  These applications run pixel-for-pixel 
identically cross-platform, despite their graphic and multi-media 
nature, and I can work on each system, back and forth, with equal 
fluidity.  (My first application for Squeak was a birthday present for 
my wife, which I wrote on my office PC, and e-mailed over to the house 
Macintosh just days before delivery -- worked like a charm.  In sharp 
contrast, TkInter was buggy, unreliable and worked differently on each 
machine.)

As to your specific points, I have never worried in Squeak about memory 
management, process or thread scheduling -- that is the virtue of 
garbage collection and Squeak's built-in coroutining.  I have never 
really had any problem running multiple processes on multiple 
applications.  YMMV.  As to documentation, there are now many references 
for Squeak, both in print and on-line.  As a practical matter, 
non-beginners rarely have problems working out what they need to know 
using the awesome system browsing facilities as a practical matter.  
Finally, of course, the "marketing" of Squeak has little bearing on its 
practical utility.

It probably does just come down to a matter of taste.  For my part, I 
can say that Smalltalk has become my language of choice for practical 
development of ideas and prototyping of new systems.  I have never been 
as productive or more efficiently linked to the computing system in any 
environment as I have found myself in Squeak.  This is not to say that 
there are things Squeak cannot easily do -- I have many arrows in my 
quiver.  But when I get excited about reducing an idea into practice, I 
find myself slipping into Squeak first -- even if the target environment 
is going to be something else because of, say, need to target a 
particular GUI or database system.

It is fair for Yoel to say he doesn't like Squeak or prefers Python, but 
his stated arguments are thin, at best.  They don't really present any 
meaningful "practical, day to day" distinctions that matter.  He may 
even be right at end (though I don't think so), but the argument wasn't 
stated here.


On Monday, January 28, 2002, at 02:39 AM, Yoel Jacobsen wrote:

> Hello all,
>
>    I'm a computer professional, doing system architecture and 
> implementation of medium to large directory, messaging and other 
> (mainly Solaris oriented) systems I have this inquiry sitting in the 
> back of my head for a long while.
>
>     I do LOVE playing with Squeak and implemented some nice ideas 
> (currently - ASN.1 encoder/decoder to form a basis for an LDAP 
> implementation).
>
>    However, when it gets to practical, day to day programming I just 
> fill that other languages (mainly - Python) is more practical. I can 
> transfer my ideas into a running program in a short while.  When 
> analyzing why it is so, I have reached the following conclusions:
>
>    1. Squeak is TOO decoupled from the underlying OS. I want to make 
> use of Solaris or any other high end UNIX like OS for memory 
> management, process and thread scheduling, and so forth. I need to make 
> sure that if managing the memory behavior of Squeak Processes will be 
> done without affecting the entire environment (I want to work on code 
> while another process is running in full speed).
>
>    Yes, I can create a minimal image and run 'squeak minimal.image 
> myscript' but it would not give me the advantage of managing a running 
> process in my development image.
>
>    2. Class documentation quality.
>
>    3. Squeak is 'marketed' and therefore progress as an idea 
> exploration tool. I usually explore my idea with the implementation 
> tool. Python do both for me.
>
>    So, the inquiry - Are you using Squeak for any practical use? Please 
> tell me only about resource intensive applications (currency conversion 
> does not count as a practical application).




More information about the Squeak-dev mailing list