Squeak is a highly respected free implementation of Smalltalk based on the original Smalltalk 80 with names such as Alan Kay and Dan Ingalls (from the original Smalltalk project) involved in it. The cool thing about Squeak is that the code not only works bit-identical across platforms, but also looks the same.
I have always wanted to play with Smalltalk because there are people who I respect and personally know in the software world who do not like to work with any other language. My friend Jason, a Smalltalk hacker had given me the 10 minute introduction a while ago about the 3 types of messages is all one needs to understand.
So I decided, to try it out for real. This is more of a challenge than one thinks, because you have to change your way of thinking. However, some of the tutorials on the web were helpful.
First things first. I hate the default theme. I can't stand it. They really could make it look nicer without my having to tweak the settings. But look and feel was the last thing on my mind. So I followed a few tutorials and came to one conclusion.
I absolutely love the environment. I am not crazy about the language or syntax, even though its nicer than any of the mainstream languages. I would anyday choose Lisp over it. I miss the parens already.
The image saving is probably the best part. CL implementations also have image saves, but really it cannot compare to the way Smalltalk does it. "Inspect" and "Do It" are great, but that is something that I expect from a half decent language anyway.
My ideal development environment would probably be a Common Lisp that is really inspired by Smalltalk environments. As far as I have heard and read about it, Lisp Machines were/are like that some 20 years ago. I do not know if any of the modern Lisp environments are like that.
The Smalltalk System Browser is such an easy to use well thought out tool. I also tried the trial version of Visual Works on Mac OS X. I did not like it as much. It seemed too complicated to me after following the "WalkThru" exercise. One tip to Cincom - GUI walkthroughs suck. Show me the language first. Show me the power of iterating through a collection of objects or something of that nature. Something that lets me write the equivalent or at least close to MAPCAR in Smalltalk. Show me how to accomplish more with less code. I know it does have those capabilities and as a developer, that is what I am waiting to see.