[Newbies] Misunderstanding Squeak

cdrick cdrick65 at gmail.com
Mon Apr 7 20:48:52 UTC 2008

>... After that I will likely compile my first partial version, and
> test it to see if what I get is what I expected. If not, I'll review the
> compile/runtime error messages (stack traces) and attempt to remedy the
> problem.

In squeak you'll use the debugger for that. This is something I love
now. no compile time anymore with breakpoints and friends...

> The are other instances in which I have taken on test-based
> programming, which involves designing the solution, writing unit tests, then
Smalltalk is full of objects... that's the difficulty, no main program
as you may be used. No C-like programming.

To code you create classes by subclassing Object or a proper one.

In squeak by example, there is a quinto game. Did you reach that point ?

Also, you could try this tutorial
http://www.swa.hpi.uni-potsdam.de/seaside/tutorial. It doesn't use
morph (the native squeak UI) but seaside, a web app framework. You'll
see how to do a to-do app, store code etc...

> writing the code for the unit tests, refactoring, writing more tests, and
> repeating the process until the solution is complete. I don't understand how
> these sorts of processes are accomplished in the object-based system called
> squeak.

If I understood correctly, SUnit was invented in Smalltalk. Same, you
subclass TestCase... etc... Open TestRunner in the open menu

> I understand that there is still source code...to some extent, or
> maybe always. And I understand the SmallTalk (Squeak) is a managed
> environment, i.e. it has a runtime environment that handles types, garbage
> collection, etc.

it's more than management IMO.
Sources code is the image file (+ source file). This is different of
source code because once you open open an image, objects are just
resumed and lives ! You can inspect/explore them, modify them, etc...
without stopping/recompiling (each time you save a method, it's
compiled transparently)

> >
> > I've started reading that PDF book, and I can't say that I've learned much
> yet. I'm also not looking for a short cut or anything. It is simply that up
> until I encountered Squeak (the past 18 years) I have never dealt with a
> visual environment that deals with development in the way that Squeak seems
> to. The only thing that I have ever seen that even compares (in my mind) to
> Squeak is Sun's Lively Kernel, an even newer innovation than Squeak.

Funny, one of the guy who do that is actually one of the creator of smalltalk :)

> background is in C/C++, Java, Ruby, C#.Net, Visual Basic (6/.Net), Python,
> Perl, (X)HTML/CSS/Javascript/XML, PHP, and ASP.Net. How do I take what I
> know of those programming languages, Agile development process and such, and
> go forward in learning how to use Squeak?

I guess this will take another dimension ;)

> >
> > Does anybody see my difficulty the way I do?

I thinks lots of people actually do, but it's hard to explain. Image
development (a la smalltalk) is fondamentally different. My first
impression (especially in squeak) was: "where do I start ?" :)

I just hope I didn't say too many mistakes ;)

See you,


ps: you should have a look here too: http://onsmalltalk.com, This is
an excellent blog... sure you'll like it.

there are plenty actually... look at the tag "programming"

> >
> > Nathan
> >

More information about the Beginners mailing list