[Newbies] Another Answer

karl ramberg karlramberg at gmail.com
Tue Nov 22 20:25:46 UTC 2011

On Tue, Nov 22, 2011 at 3:35 PM, Overcomer Man <overcomer.man at gmail.com>wrote:

> Q. I want to learn Smalltalk but without the baggage of an IDE. Just let
> me use my favorite text editor, that's much easier.
> You can do it but you have to write your code in "fileIn" format so
> Smalltalk will accept your external editor's code, compile, and execute it.
>  "fileIn" formats can vary between Smalltalks.
> The baggage of the IDE is essentially an object database of precompiled
> library software.  You can compare various Smalltalks to a lean C++ IDE
> like Bloodshed, a bloated C++ IDE like Qt, and a maximally bloated Visual
> Studio.net.  As one programmer you don't have time to fix everything to
> your taste - you'll be lucky to learn a library enough to find the tools
> you want to do your task.
> Libraries can sometime include 30 year old bugs that nobody has ever fixed
> because they are too hard to discover.  Usenet tells of a major military
> project written in Smalltalk which was cancelled and replaced with C++
> because of phantom ships appearing when they shouldn't.  They couldn't
> figure it out and fix it.
> There are several possible reasons for this.  Professional code tends to
> be written for maximum understanding by users, but free code is often
> written for the fun of the programmer, so real meaningful object names give
> way to convoluted names that only have meaning in the worldview of that
> particular programmer.  If the function they do is important enough,
> sometimes these become popular, making the function hard to learn for
> everyone else.  Another reason is executing code is notoriously difficult
> to debug in some circumstances, especially when other code in the IDE
> depends on it.  Changing the definition of terms in a particular object's
> communication with another object might fix one problem and create ten
> more.  So essentially one has to learn the entire library to redevelop
> something that's been around a while.

Some heisenbugs are really hard to track down in a live image. An object
astray or a in situ  modified object can cause hours of bug tracking. Or
long chains of definitions that seem to backtrack in circles.

A big system must often be built and rebuilt before it can be useful. I
don't think hard to manage big project is only a Smalltalk issue.

But some problems rising from the use of a object memory are not addressed
by our current tools, at least not in Squeak. And learning Smalltalk is as
much knowledge worth knowing, it's quite a hard learning curve but when you
get it it changes how you think.


> On a positive note, Cuis provides a leaner library than Squeak and is also
> licensed so you can deliver it IDE and all with your application code
> running on top, so you can deliver a lot more value to your users than with
> an ordinary exe.
> _______________________________________________
> Beginners mailing list
> Beginners at lists.squeakfoundation.org
> http://lists.squeakfoundation.org/mailman/listinfo/beginners
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.squeakfoundation.org/pipermail/beginners/attachments/20111122/a87348c1/attachment.htm

More information about the Beginners mailing list