Tuesday, August 7, 2007

Squeak Smalltalk First Impressions

As mentioned before, I decided to learn Smalltalk and was interested in Croquet and Seaside. This made the choice of Smalltalk implementations clear - Squeak. So I head on over to squeak.org and download the latest version.

The first thing I notice is that the color choices in the UI are... unexpected and the UI appearance is circa 1980 (I opened a few windows and menus as an example, this isn't what you see at first):

It doesn't bode well when your first impression of a development environment leaves you not wanting to make anything that looks like the environment. But I press on and start playing with the environment.

Smalltalk/Squeak isn't like other languages. Instead of getting a compiler and using your favorite text editor, you are given a whole environment to learn all at once. Squeak is your IDE and just about your whole OS. Smalltalk doesn't use the file system in a conventional sense. Instead everything is stored in the .image file that is essentially a snapshot of the running virtual machine.

Here is a brief translation of the tools you need to know:
  • Code Editing - Class Browser, there are several to choose from (default, Refactoring Browser, OmniBrowser, Whisker Browser, etc). The default squeak image
  • Saving Code - Not needed, everything is saved in the image and changes file. You can file out/in code.
  • Source Code Control - Monticello (or digging out the changes)
  • Unit Testing - SUnit
  • Basic Tools
Here is a good place to start for more information on squeak: http://wiki.squeak.org/squeak

Here is a nice programming tutorial in Squeak: http://squeak.preeminent.org/tut2007/html/index.html

Here is an excellent tutorial:

No comments:

Post a Comment